Summary of changes from v2.6.3-rc1 to v2.6.3-rc2 ============================================ [PATCH] m68k-related net driver fixes On Sun, 16 Nov 2003, Jeff Garzik wrote: > Yet more updates. Syncing with Andrew Morton, and more syncing with Al > Viro. > > No users of init_etherdev remain in the tree. (yay!) Here are some (untested, except for cross-gcc) fixes for the m68k-related drivers: - Space.c: fix incorrect prototypes for atarilance_probe() and mace_probe() - a2065.c: kill superfluous argument of alloc_etherdev() - apne.c: o fix incorrect prototype for apne_probe() o kill unused variable err - mac8390.c: o kill unused variable probed o fix typos ENDOEV -> ENODEV and ERR_PTE -> ERR_PTR o add missing variable slots - macmace.c: use ERR_PTR() where needed - macsonic.c: kill unused variable lp - mvme147.c: o kill conversion warning and kill a cast by making ram unsigned long o add missing variable err Note: The use of `slots' in mac8390.c is not in my tree. Do you know where that change comes from? [PATCH] sun3-related net driver fixes On Mon, 17 Nov 2003, Geert Uytterhoeven wrote: > On Sun, 16 Nov 2003, Jeff Garzik wrote: > > Yet more updates. Syncing with Andrew Morton, and more syncing with Al > > Viro. > > > > No users of init_etherdev remain in the tree. (yay!) > > Here are some (untested, except for cross-gcc) fixes for the m68k-related > drivers: I forget to test the Sun-3 drivers: - sun3_82586.c: o add missing casts to iounmap() calls o fix parameter of free_netdev() - sun3lance.c: add missing casts to iounmap() calls Note that sun3_82586.c no longer compiles since SUN3_82586_TOTAL_SIZE is not defined. Sammy, is it OK to use PAGE_SIZE for that, since that's what's passed to ioremap()? [netdrvr qeth] use alloc_etherdev instead of hand-allocating struct net_device [netdrvr meth] use alloc_etherdev; fix leaks on error/cleanup [wireless ray_cs] use alloc_etherdev [netdrvr ne3210] remove #if 0'd code [appletalk ipddp] dynamically allocate struct net_device Converts from static to dynamic allocation, in preparation for further refcount changes. [arcnet com90io] use alloc_netdev [arcnet arc-rimi] use alloc_netdev; module params; fix bugs on error/cleanup [arcnet com20020] netdev dynamic alloc; module params; fix bugs [arcnet com90xx] netdev dynamic alloc; module params; fix bugs [arcnet] create and use alloc_arcdev helper [netdrvr ppp] netdev dynamic alloc; convert ppp_net_init to alloc_netdev setup function [wan synclink] netdev dynamic alloc [wan cosa] netdev dyamic alloc [PATCH] 2.6.x experimental net driver queue fix On Wed, 19 Nov 2003, Sam Creasey wrote: > On Tue, 18 Nov 2003, Geert Uytterhoeven wrote: > > On Mon, 17 Nov 2003, Geert Uytterhoeven wrote: > > > On Sun, 16 Nov 2003, Jeff Garzik wrote: > > > > Yet more updates. Syncing with Andrew Morton, and more syncing with Al > > > > Viro. > > > > > > > > No users of init_etherdev remain in the tree. (yay!) > > > > > > Here are some (untested, except for cross-gcc) fixes for the m68k-related > > > drivers: > > > > I forget to test the Sun-3 drivers: > > - sun3_82586.c: > > o add missing casts to iounmap() calls > > o fix parameter of free_netdev() > > - sun3lance.c: add missing casts to iounmap() calls > > > > Note that sun3_82586.c no longer compiles since SUN3_82586_TOTAL_SIZE is not > > defined. Sammy, is it OK to use PAGE_SIZE for that, since that's what's passed > > to ioremap()? > > Should be... I looked back through a few versions of the code, and I'm > not even sure what SUN3_82586_TOTAL_SIZE even was (appears I commented > that line out long ago anyway). (I'm also amazed just how much of that > driver I've forgotten in the last year or two :) OK, so here's a additional patch that fixes that: [netdrvr pcmcia] fix hot unplugging This patch fixes a deadlock which occurs when a PCMCIA card is physically removed, and the netdev interface is then downed. The problem occurs because these drivers delay the call of unregister_netdev until the netdev is downed. Since 2.6 now downs the interface on unregister_netdev(), we can call this function as soon as the card has been removed without waiting for the netdev to be downed. net_device and netdev private struct allocation improvements. 1) Ensure alignment of both net_device and private area. 2) Introduce netdev_priv(), an inline which allows the dynamic private area (dev->priv) to be calculated as a constant offset from the base struct net_device at compile time. [hamradio dmascc] convert embedded net_device to dynamic allocation [char synclinkmp] convert net_device to dynamic allocation [pcmcia] synclink_cs] convert net_device to dynamic allocation [atm clip] convert to using alloc_netdev(), const-offset priv [netdrvr] s/kfree/free_netdev/ where appropriate Affected drivers: ixgb, sk98lin, ibmtr, airport, orinoco, wl3501_cs [wireless wl3501_cs] remove unused constructor [netdrvr] convert most 8390 drivers to using alloc_ei_netdev() [netdrvr smc-mca] alloc_ei_netdev(), other fixes Move all initialization between alloc_ei_netdev() and register_netdev(), and fix bugs on error paths. Also s/kfree/free_netdev/ [netdrvr pcnet_cs] alloc_ei_netdev-associated cleanups Create __alloc_ei_netdev() helper, which takes a size argument for allocation of driver-private structures. Use __alloc_ei_netdev in pcnet_cs, for embedded priv struct. [netdrvr 8390] convert 8390 lib to use const-offset priv struct [NET] s/kfree/free_netdev/ in bridge driver [netdrvr axnet_cs] use embedded private struct [netdrvr skfddi] use PCI hotplug API; other cleanups Third revision of the cleanup of skfddi driver. * use new pci device bus initialization * allocate network device with alloc_fddidev and use dev->priv * get rid of special module/non module distinctions. * fix error unwinds and return values on initialization * call driver_init directly not via register_netdev * reset internal queue count after purge * get rid of h[iy]sterical comment that is no longer true about warnings [PATCH] bonding cleanup 2.6 - Simplify ifenslave ifenslave lite - No more IP settings to slaves, unified printing format, code re-org and broken to more functions. [PATCH] bonding cleanup 2.6 - Consolidate prints Convert all debug prints to use the dprintk macro and consolidate format of all prints (e.g. "bonding: Error: ..."). [PATCH] bonding cleanup 2.6 - death of typedefs Eliminate bonding_t/slave_t types and consolidate casting. [PATCH] bonding cleanup 2.6 - remove dead code Removed dead code and redundant checks. [PATCH] bonding cleanup 2.6 - Consolidate timer handling Consolidate timers initialization, error checking and re-queuing. [PATCH] bonding cleanup 2.6 - Fix handling of bond->primary Fix all locations that handles bond->primary. Convert too long if-else to a switch-case. [PATCH] bonding cleanup 2.6 - Remove multicast_mode module param Eliminate the multicast_mode module param. Settings are now done only according to mode. [PATCH] bonding cleanup 2.6 - Fix slave list iteration bond is no longer part of the list. Added cyclic list iteration macros. [PATCH] bonding cleanup 2.6 - Consolidate function declarations All functions begin with bond_ Return value, function name and all params are on the same line. [PATCH] bonding cleanup 2.6 - consolidate param names of function params and variables Consolidate names of function params and variables e.g. bond_dev instead of dev/master/master_dev. [PATCH] bonding cleanup 2.6 - Re-org struct bonding members (re-send) Change names/types for some of the members in struct bonding. Change position of members. [PATCH] bonding cleanup 2.6 - consolidate return values of functions. [PATCH] bonding cleanup 2.6 - Consolidate conditions & statements Put curly braces around all if, else, for, while, switch statements. Change conditions to short format. g. (ptr == NULL) ==> (!ptr). [PATCH] bonding cleanup 2.6 - Consolidate error handling in all xmit functions [PATCH] bonding cleanup 2.6 - Whitespace cleanup Chomp all trailing white space. [PATCH] bonding cleanup 2.6 - empty lines cleanup Remove duplicate empty lines. add empty lines where needed to improve readability. [PATCH] bonding cleanup 2.6 - fix indentations. [PATCH] bonding cleanup 2.6 - Code re-org Code re-organization in bond_main.c according to context (e.g. module initialization, bond initialization, device entry points, monitoring, etc). [PATCH] bonding cleanup 2.6 - Fix rejects from previous patches According to Jeff's recommendations: o Put constant expressions in a constant. o Put parentheses in calculations to improve readability. o Remove redundant cast from void pointer. [netdrvr ns83820] Switched to sane net_device allocation [netdrvr ns83820] Plugs the races around too early register_netdev() [netdrvr ibmlana] ibmlana switched to sane allocation, leaks fixed [netdrvr] A bunch of gratitious ->init() killed; several leaks plugged. Drivers updated: eth1394, baycom_epp, lp486e, plip, 3c359, olympic, tms380tr. [netdrvr 8390] Forgotten return 0; removed [netdrvr pcnet32] Added missing check and cleanup for register_netdev() failure in pcnet32 [netdrvr ibmtr, ibmtr_cs] cleanup and leak fixes. [netdrvr bonding] fix broken build [irda sa1100_ir] convert to using standard alloc_irdadev() [irda sa1100_ir] "resurrect from bitrot hell" - Don't dereference net device in suspend/resume methods until we know the device data has actually been set. - Remove deprecated MOD_INC_USE_COUNT/MOD_DEC_USE_COUNT - System devices in their original form are long since dead. Convert to using a platform device. - Convert to parameters to moduleparam format. - Use register_netdev not register_netdevice - the latter causes us to register "irda%d" as the device name rather than a properly formatted device name. [netdrvr] new-probe warning fix [SCTP] provide valid tos and oif values for ip_route_output_key. (ja@ssi.bg) [SCTP] Add sysctl parameters to update socket send/receive buffers. [ACPI] add Bruno Ducrot to CREDITS [ACPI] Check for overflow when parsing MADT entries from Jes Sorensen [ACPI] update passive cooling algorithm from Dominik Brodowski The current algorithm used by Linux ACPI for passive thermal management has two shortcomings: - if increasing the CPU processing power as a thermal situation goes away, throttling states are decreased later than performance states. This is not wise -- it should be the opposite ordering of going "up". - only if the ACPI CPUfreq driver is used, performance states are used. A generalized approach would offer passive cooling even if the ACPI P-States cpufreq driver cannot be used (faulty BIOS, FixedHW access, etc.) [ACPI] remove unnecessary check in acpi-cpufreq driver from Dominik Brodowski The acpi cpufreq driver includes a test at startup which detects whether ACPI P-States are supported on any CPU, and whether transitions work. However, this test is faulty: it is only run _after_ the acpi driver is registered, causing race situations. Also, it doesn't save anything _as_ the driver is already registered. So, it can safely be removed. [ACPI] update _PPC handling -- from Dominik Brodowski updates the _PPC handling. It is handled as a CPUfreq policy notifier which adjusts the maximum CPU speed according to the current platform limit. [ACPI] acpi-cpufreq fixups from Dominik Brodowski - remove unnecessary usage of flags.performance - remove double check of _PPC in acpi-cpufreq driver as it's handled in drivers/acpi/processor.c already - remove unneeded EXPORT_SYMBOL - allocation of memory only for probed CPUs - add unregistration function to the core - fix OOPS when PST has core_frequency values of zero - fix cpufreq_get() output - fix /proc/acpi/processor/*/performance write support [deprecated] [ACPI] more acpi-cpufreq fixups from Dominik Brodowski Fix a horribly wrong memcpy instruction in cpufreq_update_policy which caused it to oops. fix build error from undefined NR_IRQ_VECTORS [ACPI] quiet numa boot -- from Jes Sorensen [PATCH] USB: gcc-3.5: drivers/usb/gadget/net2280.c drivers/usb/gadget/net2280.c: In function `write_fifo': drivers/usb/gadget/net2280.c:527: error: `typeof' applied to a bit-field drivers/usb/gadget/net2280.c: In function `handle_ep_small': drivers/usb/gadget/net2280.c:2042: error: `typeof' applied to a bit-field [PATCH] USB: gcc-3.5: drivers/usb/input/hid-core.c drivers/usb/input/hid-core.c: In function `fetch_item': drivers/usb/input/hid-core.c:605: error: invalid lvalue in increment drivers/usb/input/hid-core.c:612: error: invalid lvalue in increment [PATCH] USB: gcc-3.5: drivers/usb/misc/uss720.c drivers/usb/misc/uss720.c: In function `parport_uss720_epp_read_data': drivers/usb/misc/uss720.c:336: error: invalid lvalue in increment drivers/usb/misc/uss720.c: In function `parport_uss720_epp_read_addr': drivers/usb/misc/uss720.c:395: error: invalid lvalue in increment drivers/usb/misc/uss720.c: In function `parport_uss720_epp_write_addr': drivers/usb/misc/uss720.c:415: error: invalid lvalue in increment drivers/usb/misc/uss720.c: In function `parport_uss720_ecp_write_addr': drivers/usb/misc/uss720.c:472: error: invalid lvalue in increment [PATCH] USB: gcc-3.5: drivers/usb/storage/usb.c drivers/usb/storage/usb.c: In function `usb_stor_release_resources': drivers/usb/storage/usb.c:837: error: invalid lvalue in assignment [PATCH] USB: remove unused usb-debug.c file (moving the one used function into the usb.c file.) [PATCH] USB gadget: file_storage.c -- remove device_unregister_wait() It replaces a call to device_unregister_wait() in the File-backed Storage Gadget. [PATCH] USB: ehci - clear TT buffer command patch I have a patch for a typo in the 2.6.0 kernel, drivers/usb/core/hub.c, in hub_clear_tt_buffer, the value USB_DIR_IN | USB_RECIP_OTHER is used for bmRequestType, when section 11.24.2 of the spec says it should really be USB_RT_PORT, or 00100011b. After limited testing, this change exhibited better recovery from TT errors, here's the patch : [PATCH] USB: fix Bug 1821: sleeping function called > Data point: "visor.c" always passes GFP_ATOMIC there. Here's a patch that makes cdc-acm use GFP_ATOMIC too, and report consequent allocation failures. Compiles but otherwise untested. [PATCH] PCI: add back some pci.ids entries that got deleted in the last big update. [PATCH] PCI: Remove uneeded resource structures from pci_dev The following patch remove irq_resource and dma_resource from pci_dev. It appears that the serial pci driver depends on irq_resource, however, it may be broken portions of an old quirk. I attempted to maintain the existing behavior while removing irq_resource. I changed FL_IRQRESOURCE to FL_NOIRQ. Russell, could you provide any comments? irq_resource and dma_resource are most likely remnants from when pci_dev was shared with pnp. [PATCH] PCI Hotplug: coding style for cpqphp_pci.c here are some coding style fixes. [PATCH] I2C: add Hydra i2c bus driver Here's a new version, incorporating these comments, and making a few more changes: - Use struct definition in instead of #defined offset - Remove flushes are register writes, they are no longer needed - Use pci_resource_start() instead of dev->resource[].start - ioremap() the whole resource instead of the first 256 bytes - Check for errors returned by ioremap() and i2c_bit_add_bus() - Add resource management - Call iounmap() in hydra_remove() instead of in i2c_hydra_exit() - Let I2C_HYDRA depend on I2C and select I2C_ALGOBIT instead of depending on I2C_ALGOBIT [PATCH] I2C: fix typos Following patch fixes two typos and a missing full stop. [PATCH] USB: remove pci_unmap_single() calls from usbcore There's an unnecessary pci-ism in usbcore -- just an oversight in some API conversion, and harmless on most systems. This'll be a good thing to remove for non-PCI HCD support though. [ACPI] proposed fix for AML parameter passing from Bob Moore http://bugzilla.kernel.org/show_bug.cgi?id=1766 [ACPI] Move the _PSS and _PCT access to drivers/acpi/processor.c so that it can be used by various low-level drivers (centrino, acpi-io, powernow-k{7,8}, ...) from Dominik Brodowski [ACPI] Move the /proc/acpi/processor/./performance output to drivers/acpi/processor.c -- it's the same for all lowlevel drivers. By doing so, the lowlevel drivers no longer need to have access to struct acpi_processor. from Dominik Brodowski [ACPI] Abstract the registration method between low-level drivers and the ACPI Processor P-States driver. from Dominik Brodowski [ACPI] add _PDC support Add support for _PDC to the ACPI processor "Performance States library" (perflib). If this field is empty, a bogus entry is passed to the _PDC method so that the default (io) access is returned again. This patch is partly based on David Moore's patch to arch/i386/kernel/cpu/cpufreq/acpi.c, sent to the cpufreq mailing list on June 24th, 2003. [ACPI] make # of performance states dynamic from Dominik Brodowski [PATCH] PCI: Replace pci_pool with generic dma_pool - Move drivers/pci/pool.c to drivers/base/pool.c - Initialize struct device.dma_pools in device_initialize() - Remove initialization of struct pci_dev.pools from pci_setup_device() [PATCH] PCI: Replace pci_pool with generic dma_pool, part 2 include/linux changes: - Add dma_pools member to struct device - Add include/linux/dmapool.h - Remove pools memober from struct pci_dev - Replace pci_pool_* functions with macros that map to dma_pool_* functions [PATCH] dmapool: use dev_err() whenever we can to get the better information in it. [PATCH] PCI Hotplug: Whitespace fixes for acpiphp This are some whitespace fixes for acpiphp, in most cases killing spaces before the opening brace of function declarations. [PATCH] PCI Hotplug: Kill spaces before \n in ibmphp* Don't use a space directly before '\n' in error/debug messages. This adds extra code size, causes unneeded line breaks in xterms, noone else does it and it's just superfluos and ugly. This also adds a missing ")" in a comment. [PATCH] PCI Hotplug: Kill useless instructions from ibmphp_core.c This kills the explicit setting of rc to -ENODEV in 2 places where it is not necessary because it will have this value on this path anyway. [PATCH] PCI: Patch to get cpqphp working with IOAPIC Here is a patch for to get cpqphp working with IOAPIC. My earlier statement that a kernel patch is not needed for 2.6 is true only when ACPI is enabled. A similar patch is needed in pcibios_enable_irq() for 2.4 kernel and I will send it out later. The fix is in pirq_enable_irq(). This function is called indirectly by pci_enable_device(). For device present during boot up, it should get the proper dev->irq for pcibios_fixup_irqs() has been called to get the dev->irq from MP table. If the value is still zero, then this is properly caused by "buggy MP table". For hot-plug device, its dev->irq is 0 when the pci_enable_device() is called for it hasn't gone through the fixup. Therefore, the code (similiar to the code in pcibios_fixup_irqs) is needed here. [PATCH] USB: mark the scanner driver BROKEN Greg, I think this now makes 2 distinct bugs in the scanner kernel driver. Maybe it should be protected with a BROKEN: [PATCH] USB: fix usb hc and shared irq handling Here is a revised version of the irqreturn_t propagation patch. The only difference is now ohci-hcd returns IRQ_HANDLED in the remove case. [PATCH] USB: remove reference to usb_hcd.refcnt in ohci-sa111.c Following patch against 2.6.2-rc2 removes a reference to what appears to be a deprecated member of struct usb_hcd from the function ohci-sa111.c:usb_hcd_sa1111_remove(). [PATCH] USB gadget: fix usb/gadget/file_storage.c doesn't compile with gcc 2.95 [PATCH] USB storage: fix sign bug in usb-storage datafab 2.6 has no -fsigned-char anymore. there are 3 checks for info->lun < 0 [PATCH] USB: fix DMA to stack in tt-usb this driver does DMA to the stack via usb_bulk_msg(). [PATCH] USB: fix URB leak in belkin driver if submission of the interrupt URb fails in belkin_sa_open() the previously submitted URB may remain live. The rest of the system thinks that opening failed, therefore the URB should be unlinked in the error case. [PATCH] USB: add support for the Aceeca Meazura device to the visor driver. Thanks to Terry Markovich for the information. [PATCH] I2C: Bring w83l785ts in compliance with sysfs naming conventions Here is a patch that brings the w83l785ts driver in compliance with sysfs naming conventions. This is pretty much the same problem and solution that occured very recently with the lm75 and lm78 drivers. The patch was tested to work fine by James Bolt. [PATCH] I2C: Handle read errors in w83l785ts Here is a patch that adds proper read error handling in the w83l785ts driver. This is needed for this driver because on many Asus boards the BIOS or something accesses the chip in our back and causes collisions or something similar that causes many read errors. For now, these errors make the driver return temperature values of -1 from times to times. I have been working with James Bolt on this. See the thread on the lm_sensors mailing list for details. The patch is fairly well tested. It is against 2.6.2-rc3 + your current stack of patches as I know it. The "retry until it works" method is the best I could think of, since we have no information from Asus and I don't expect to get any. If it still doesn't work after an arbitrary number (5) of tries it returns the previously known value and generates an error in the logs. James' tests showed that it will probably never happen though (highest retry count was 3 and happened once out of 3000 reads) unless we lower the arbitrary number (but we don't want to, do we?) I inserted incremental delays as reads fail, I felt like it should help avoid collisions with whatever-is-bugging-us. Seems to work OK, but it's not perfect (since we sometimes need 3 retries) and I didn't test with a different policy (no delay, constant delay or different increment). [PATCH] I2C: add new driver, gl518sm Here comes a new i2c chip driver for Linux 2.6: gl518sm, ported from our CVS repository by Hong-Gunn Chew. I have reviewed Gunn's code and we made a few cleanups and improvements over the original driver. See our complete exchange on the sensors mailing-list for details. [PATCH] Driver core: add hotplug support for class_simple This is needed by the DRI code. [PATCH] Kobject: export some missing symbols [PATCH] PCI: dma_pool fixups [PATCH] PCI: avoid two returns directly after each other in pcidriver.c This avoids a return direct before the final return of a function. Better only modify the return code and fall through to the final return. [PATCH] PCI Hotplug: Coding style fixes for drivers/pci/hotplug.c [PATCH] PCI Hotplug: very small optimisations for ibmphp_pci.c [PATCH] PCI Hotplug: kill hpcrc from several functions in ibmphp_core.c This patch kills the variable hpcrc from many places. It is used as a temporary storage for the return code before this is copied to rc which contains the "real" return code. There are some checks if to copy or not but at the end they will always have the same value, so we can directly put the return code in rc and kill hpcrc. [PATCH] PCI Hotplug: make ibm_unconfigure_device void ibm_unconfigure_device always returns 0, so we do not need to check for a return value != 0 and can kill the warning. And if the return value is always the same we don't need a return value. Also some whitespace fixing. And this time not line wrapped. Really. Absolutely sure. Checked twice. [PATCH] I2C: fix oops when CONFIG_I2C_DEBUG_CORE is enabled and the bttv driver is loaded. [PATCH] PCI: fix "pcibus_class" Device Class, release function John Rose wrote: > The function release_pcibus_dev() in probe.c defines the release procedure for > device class pcibus_class. I want to suggest that this function be scrapped :) > > This release function is called in the code path of class_device_unregister(). > The pcibus_class devices aren't currently unregistered anywhere, from what I > can tell, so this release function is currently unused. The runtime removal of > PCI buses from logical partitions on PPC64 requires the unregistration of these > class devices. The natural place to do this IMHO is in pci_remove_bus_device() > in remove.c. You're right that the class device isn't currently unregistered, and that was an oversight in the patch I originally sent. Attatched is a patch that remedies that situation. pci_remove_bus_device() *is* the natural place to unregister the class_dev, and that's just what the patch does. > The problem is that this calls pci_destroy_dev(), which calls put() on the same > "bridge" device that the release function does. This should only be done once > in the course of removing a pci_bus, and I doubt that we want to change > pci_destroy_dev(). The kfree() of the pci_bus struct is also done in both > pci_remove_bus_device() and release_pcibus_dev(). Yep. The patch pulls the kfree() out of pci_remove_bus_device() and calls class_device_unregister() in it's place. This will put() the bridge device and free the pci_bus as needed. put() does need to be called twice because the bridge device is get()'d twice: once when the device is registered and once when it's bus device grabs a reference to it. [PATCH] Driver core: remove device_unregister_wait() as it's a very bad idea. [PATCH] dmapool: Remove sentance in documentation that is now false on 2.6 [PATCH] USB: fix Casio digicam entry in unusual_devs.h [PATCH] USB: Update ohci-omap to compile Following is a trivial patch to update the ohci-omap.c in 2.6.2 to be in sync with the OMAP tree. Basically the IRQ name was changed, which keeps the driver from compiling. It also includes a cosmetic change to replace inl/outl with readl/writel. [PATCH] USB: remove USB_SCANNER from the build USB_SCANNER is obsolete, and it's now marked as BROKEN. I there a good reason to keep it in the kernel? [PATCH] USB: remove scanner driver files. [PATCH] PCI Hotplug: mark functions __init/__exit in acpiphp These functions are only called from places marked __init or __exit, so we can mark them also. [SCTP] Removed the deprecated ADLER32 checksum support. [PATCH] USB: change uhci maintainer [PATCH] USB Gadget: ethernet gadget locking tweaks [USB] ethernet gadget, locking tweaks This problem showed pretty quickly on an SMP system. Basically, access to the freelist (tx more than rx) needs a spinlock. Stop repeating some alloc_etherdev() work. Disable DEBUG messages. [PATCH] USB Gadget: pxa2xx_udc updates [USB] pxa2xx_udc updates, mostly for non-Lubbock hardware - IXP 42x UDC support (Greg Weeks) - remove Lubbock-specific build assumption (Guennadi Liakhovetski) - handle D+ pullup right on iPaqs, e7xx, etc (HH.org) - don't unbind() with irqs blocked; matches other controller drivers, and network layer expectations - handle some deferred ep0 responses better - support iso transfers (needs fifo size tracking) [PATCH] USB: usbtest updates [USB] usbtest, add more tests; minor fixes More tests for host and gadget controller drivers: - test 13, bulk endpoint halts - test 14, control OUT transfers - test 15, iso OUT testing - test 16, iso IN testing Other improvements: - Many tests now support data pattern testing submodes. - Use the standard usb_set_interface() call, not its own version ... one more API call covered! - Converted to use driver model style diagnostics. And minor fixes. [PATCH] USB: usbnet updates (new devices) [USB] usbnet updates: new devices, cleanups New devices: Aten UC210T, Zaurus SL-6000 Cleanup, factoring out shared CDC glue for Ethernet, Zaurus, and eventually RNDIS. [PATCH] I2C: Update I2C maintainers entry I propose the following update of the "I2C AND SENSORS DRIVERS" entry in MAINTAINERS: * Remove Frodo Looijaard. He isn't active in the project anymore, and forwards everythings he receives to the mailing-list. More work for everyone, and increased latency. * Move your name to the top. This is more realistic since you are the real maintainer of the i2c subsystem in 2.6. * Reindent. Spaces were used instead of tabs. [ACPI] fix IA64 build warning from Martin Hicks [PATCH] toshiba_acpi 0.17 from John Belmonte Fix remote chance of invalid buffer access in write_video. Support alternate HCI method path (recent "Phoenix BIOS" Toshiba's). Signal more proc-write errors. On proc-reads, report errors via printk instead of proc output. Add log level and driver name prefix to all printk's. Add missing __init and __exit function attributes. Be explicit about vars for which code relies on zero-init of BSS. [PATCH] acpi4asus update from Karol 'sziwan' Kozimor The attached patch updates the acpi4asus driver to 0.27 through the following changes: - add support for M1300A, S5200N, L8400L, - remove WLED support for certain models, since it is not controlled by AML, - add LCD backlight switching for L2E / L3H, - C99 initializers, - generic LED handlers, - the output of ASYM method to provide battery state information (might be more accurate under certain conditions) in /proc/acpi/asus/info, - fix several oddities, various clean-ups and other minor changes. The patch itself is quite big, which is mostly due to the C99 initializers and the fact that diff doesn't like moving code around. This has been compile-tested in various configurations, the substantive changes were discussed on the acpi4asus mailing list. The code should apply to current bk (both for 2.4 and 2.6). The patch is also available here: http://hell.org.pl/~sziwan/asus/acpi4asus-0.26-0.27.diff Thanks to all the contributors (notably Pontus Fuchs) to this release. [PATCH] Char drivers: cdev_unmap() To recap my argument: the current cdev implementation keeps an uncounted reference to every cdev in cdev_map. Creators of cdevs must know to call cdev_unmap() with the same arguments they passed to cdev_add() before releasing the device, or that reference will remain and will oops the kernel should user space attempt to open the (missing) device. It's an easy mistake to make, and, IMO, entirely unnecessary; the cdev code should be able to do its own bookkeeping. [PATCH] USB: uhci - unused urbp element The usb device member in the urb private structure is redundant, it is set but never used. [PATCH] USB: USB misc OHCI updates Here are three minor OHCI changes: * Turn off periodic dma transfers until they're needed. Extra DMAs consume power, and can trigger problems on marginal systems. * New module param "power_switching" (default false). Many boards will have no problems with this mode. It makes OHCI act more like most external hubs and like EHCI. * Minor SMP cleanup affecting display-only usbfs statistics. On one system, turning off the periodic DMAs made two of the four active OHCI controllers work in cases that previously triggered "Unrecoverable Error" IRQs. [PATCH] USB: DSBR-100 tiny patch Fix timy errors in comments and strings. [PATCH] PCI Hotplug: Convert error paths in ibmphp to use goto This patch converts the error paths in several functions in ibmphp to use goto to the end of the function to kill code duplication. It also kills some memsets of pointer members of a struct where the struct itself is freed directly after. This one has 2 modification from the first version: the if is back as discussed and one extra long line (>> 150 chars) is wrapped now. [SPARC]: Fix AIO syscall numbering. [PATCH] PA-RISC needs IPC64 structs PA-RISC also uses the 64-bit version of the IPC structs. [PATCH] PA-RISC Harmony driver update Update harmony driver to the latest in the PA-RISC tree (Helge Deller) [PATCH] New ptrace.h definitions ARM added a definition for PT_SINGLESTEP which conflicted with our definition. So define PT_SINGLESTEP_BIT, PT_BLOCKSTEP_BIT and PT_BLOCKSTEP to prevent similar problems in the future. (James Bottomley) NFSv4/RPCSEC_GSS: Ensure that RPC userland upcalls time out correctly if the corresponding userland daemon is not up and running. RPCSEC_GSS: More fixes to the upcall mechanism. RPCSEC_GSS: Make the upcalls detect if the userland daemon dies while processing a request. NFSv4: Fix an Oopsable condition if we fail to get the root directory under NFSv4. NFSv4: Bugfixes for the NFSv4 client name to uid mapper. Fixes a memory-scribble problem. NFSv4: Bugfixes and cleanups for the NFSv4 client name to uid mapper. Includes a fix by Tim Woods to deal with a caching bug in the case where a user and a group share the same numerical id and/or name. RPCSEC_GSS: Make it safe to share crypto tfms among multiple threads. RPCSEC_GSS: Oops. Major memory leak here. RPCSEC_GSS: Fix two more memory leaks found by the Stanford checker. RPCSEC_GSS: Fix yet more memory leaks. RPCSEC_GSS: Miscellaneous cleanups of the krb5 code required for the integrity checksumming mode. RPCSEC_GSS: Instead of having gss_get_mic allocate memory for the mic, require the caller to pass an output buffer whose data pointer already points to preallocated memory. RPCSEC_GSS: Client-side only support for rpcsec_gss integrity protection. Since this requires checksumming an entire request, instead of just the header, and since the request may include, for example, pages with write data, we modify the gss_api routines to pass xdr_bufs instead of xdr_netobjs where necessary. We add rpcauth_wrap_req and rpcauth_unwrap_resp to rpcauth.c, wrappers for the new rpc cred ops crwrap_req and crunwrap_req, which are called just before encoding, and just after decoding, respectively. RPCSEC_GSS: Move the gss sequence number history from the task structure to the request structure, where it makes more sense. In particular, when we start storing more sequence number history (necessary to process responses to resent requests correctly), this will make it easier to initialize the necessary data structure in the right place (in xprt_request_init). RPC: xdr_encode_pages either leaves the tail iovec pointing to null or, if padding onthe page data is needed, sets it to point to a little bit of static data. This is a problem if we're expecting to later append some data in gss_wrap_req. Modify xdr_encode_pages to make tail point to the end of the data in head, as xdr_inline_pages and xdr_write_pages do. RPC: Add support for sharing the same RPC transport and credential caches between different mountpoints by allowing cloning of the rpc_client struct. NFSv4/RPCSEC_GSS: Make Frank's server->client_sys feature use RPC cloning in order to avoid duplicating sockets etc. Make NFSv4 share a single socket for all communication to the same server. NFSv4: Convert the RENEW operation from using nfs4_compound, to being a standalone RPC call in preparation for the renew daemon overhaul. NFSv4: Convert the lease renewal daemon from being per-mountpoint to being per-server. Instead of running it on top of rpciod, convert it to use keventd. This mean we can use the struct nfs4_client semaphores for ordering purposes. NFSv4: Split out the code for retrieving static server information out of the GETATTR compound. NFSv4: Convert SETCLIENTID and SETCLIENTID_CONFIRM to be standalone operations. Ensure that SETCLIENTID_CONFIRM always returns the lease timeout length. NFSv4: Don't translate those NFSv4 errors that are needed by the kernel itself into EIO. Fix a signed/unsigned bug in nfs4_increment_seqid. NFSv4: Preparation for the server reboot recovery code. NFSv4: Basic code for recovering file OPEN state after a server reboot. RPC/NFSv4: Allow lease RENEW calls to be soft (i.e. to time out) despite the mount being hard. RPC: Ensure that we disconnect TCP sockets if there has been no NFS traffic for the last 5 minutes. This code also affects NFSv2/v3. NFSv4: Atomic open(). Fixes races w.r.t. opening files. NFSv4: Share open_owner structs between several different processes. Reduces the load on the server. NFSv4: Fix a bug which was causing Oopses if the client was mounting more than one partition from the same server. NFSv4: Add support for POSIX file locking. SCSI: undelete qlogicfc driver by user request [PATCH] qla2xxx Kconfig fix qla2xxx needs to be replumbed back into driver/scsi/Makefile. David Miller had already sent along a patch to me which achieves this by removing the _CONFIG suffix. [PATCH] Fix qla2xxx warnings On ppc64: drivers/scsi/qla2xxx/qla_dbg.c: In function `qla2300_fw_dump': drivers/scsi/qla2xxx/qla_dbg.c:64: warning: int format, different type arg (arg 5) drivers/scsi/qla2xxx/qla_dbg.c: In function `qla2100_fw_dump': drivers/scsi/qla2xxx/qla_dbg.c:600: warning: int format, different type arg (arg 5) drivers/scsi/qla2xxx/qla_os.c: In function `qla2x00_proc_info': drivers/scsi/qla2xxx/qla_os.c:2386: warning: cast to pointer from integer of different size drivers/scsi/qla2xxx/qla_os.c:2386: warning: cast to pointer from integer of different size The qla_dbg() warning occurs because on ppc64 size_t is a long. sizeof returns a size_t. I used %Z rather than the more modern %z, because gcc-2.95 warns about %z. printk supports both. For printing out dma_addr_t's, we really don't know what size they are here, so treating them as unsigned long long is best. [PATCH] remove MOD_INC_USE_COUNT from drivers/ide/ From: Christoph Hellwig Instead of using the old MOD_INC_USE_COUNT and getting warnings all the time preventing module unload can be much easier achived by just not implementing a module_exit handler. [PATCH] fix ns87415.c for PA-RISC Super I/O chip From: Matthew Wilcox [PATCH] fix too early probing of default IDE ports It was broken by IDE modular fixes in 2.6.2. [PATCH] Fix imm/ppa initializing bug in driver updates Let's play spot the bug here... Amazing that it survives in modular case... [PATCH] fix duplication of DMA {black,white}list in icside.c Always compile ide-dma.c if CONFIG_BLK_DEV_IDEDMA=y, mark PCI specific code with CONFIG_BLK_DEV_IDEDMA_PCI for now (it should migrate to ide_pcidma.c over a time). This fixes a small bug - in_drive_list() from icside.c used !strstr() instead of strstr() so it was missing two entries from a blacklist. [PNP]: Fix Serial PnP driver The serial driver currently fails to unregister its pnp driver upon module unload. This patch corrects the problem by calling pnp_unregister_driver and implementing a proper remove function. [PNP]: Resource flags update This patch reorganizes resource flags to ensure that manual resource settings are properly recognized. This fix is necessary for many ALSA drivers. It also prevents comparisons between unset resource structures. The bug was discovered by Rene Herman , who also wrote an initial version of this patch. I made further improvements to ensure that the pnp subsystem was compatible with this initial change. [PNP]: Disable resources fix Some PnPBIOSes do not follow the specifications with regard to disabling devices. This patch preserves the tag bits, while zeroing the resource settings. Previously we would zero the entire buffer. It has been tested and appears to correct the issue while remaining compatible with unbroken PnPBIOSes. [PNP]: Avoid static requests Recently many PnPBIOS bugs have been triggered by static resource information requests. This patch makes an effort to further avoid making them. [PNP] Move ID declarations This patch moves the PnP ID declarations to mod_devicetable.h like most of the other buses. It is from Takashi Iwai . [PNP]: file2alias support This patch updates file2alias.c to support pnp ids. It is from Takashi Iwai . [PNP]: Card matching code fix This patch updates the matching code to ensure that all requested devices are present on the card, even if they are in use. It is necessary for some ALSA drivers to work properly because early vendors would have different sets of devices on the same card ids. It is from Takashi Iwai . [PNP]: Add additonal sysfs entries This patch adds some aditional information to sysfs for pnp cards. It should be useful for userland tools. [PNP]: Cleanup Kconfig This patch cleans up the kconfig options for the pnp subsystem. It updates the comments and makes pnpbios proc support an optional feature. [ARM] Fix asm syntax for gcc3. [ARM] Use scsi_host_{alloc,put}() rather than scsi_{un,}register() [ARM] Add prefix to driver constants to prevent namespace clashes. [PATCH] v850: Add some #includes for the v850 to eliminate some compiler warnings From: (Miles Bader) Add some #includes for the v850 to eliminate some compiler warnings [PATCH] v850: Define ARCH_HAS_*_EXTABLE macros for v850 From: (Miles Bader) Define ARCH_HAS_*_EXTABLE macros for v850 [PATCH] v850: make __delay function handle a loop count of zero From: (Miles Bader) make __delay function handle a loop count of zero. In practice, this only seems to occur in odd debugging situations, but it's quite annoying then. [PATCH] add device id to radeonfb From: Andreas Steinmetz The attached patch adds the pci id 5961 to radeonfb. Without the patch my 9200 displays only a blank screen. lspci output below. 05:00.0 VGA compatible controller: ATI Technologies Inc Radeon RV280 [Radeon 9200] (rev 01) (prog-if 00 [VGA]) Subsystem: Giga-byte Technology: Unknown device 4018 Flags: bus master, 66Mhz, medium devsel, latency 64, IRQ 16 Memory at e0000000 (32-bit, prefetchable) [size=128M] I/O ports at b800 [size=256] Memory at feaf0000 (32-bit, non-prefetchable) [size=64K] Expansion ROM at feac0000 [disabled] [size=128K] Capabilities: [58] AGP version 3.0 Capabilities: [50] Power Management version 2 [PATCH] Fix ppa/imm warnings From: Simplify the code, eliminate an unused variable warning. [PATCH] Fix __filemap_fdatawrite() comment It was old. [PATCH] bitmap_snprintf() optimization From: Joe Korty Now that bitmap_parse is part of bitmap.[ch], it is allowed to manipulate bits directly as the other bitmap routines do. [PATCH] alpha: fix build error due to __attribute_const__ conversion Include the needed compiler.h. Also swizze the return type and the attribute around to match everyone else. [PATCH] vx222_ops.c warning fix Print a size_t correctly. [PATCH] cciss: PCI BAR sizing fix From: This patch eliminates the bad assumption that all of our PCI BARs will always be 32-bits. Tested against the 2.6.2 kernel. This is required to support the Pinnacles architecture. It is already in the 2.4 tree. (This needs to be converted to use pci_request_regions()) [PATCH] cciss: Fix freeing of incorrect IO memory address From: mikem@beardog.cca.cpqcorp.net This patch fixes a bug where under certain error conditions we bail and try to free our I/O memory. This patch is in the 2.4 tree. [PATCH] cciss: Add support for SA 6i embedded controller From: mikem@beardog.cca.cpqcorp.net This patch adds support for the next generation embedded cciss controller. It also bumps the version and changes the author to HP. This patch is in 2.4. [PATCH] cciss: IRQ sharing fix From: mikem@beardog.cca.cpqcorp.net This patch fixes a bug when sharing IRQs with another controller that receives a lot of interrupts. Without this check we will panic the system when unloading and reloading the driver. This is in 2.4. [PATCH] cciss: disble prefetching in ASIC From: mikem@beardog.cca.cpqcorp.net This patch addresses a bug in the ASIC on the 6400 series controllers. When prefetching from host memory we grab an extra 750 or so bytes of data. If this occurs on a memory boundary the machine will MCA. This bug affects IPF and Alpha based platforms. It is not known to be a problem on x86. Prefetch will be disabled via the f/w. We need to enable it on x86 to address a _big_ performance hit on RAID 1 operations. It is in the 2.4 tree. [PATCH] cciss: intialisation oops fix From: mikem@beardog.cca.cpqcorp.net This patch moves the check of the controller to before trying to enable it. If a controller is disabled the system will Oops without this fix. This in the 2.4 tree. [PATCH] cciss: avoid reading PCI config space From: mikem@beardog.cca.cpqcorp.net This patch replaces reading directly form PCI config space where possible. Most of what we need is in the pdev struct. This is in 2.4. [PATCH] cciss: printk format fix From: mikem@beardog.cca.cpqcorp.net This patch changes a format specifier to unsigned to prevent the number of blocks being displayed as a negative value on very large volumes. [PATCH] cciss: improve /proc presentation From: mikem@beardog.cca.cpqcorp.net This patch changes the way we fill out the /proc files we create. It now has human readable volume sizes, RAID levels, etc. Also removes some fields that were orginally for debug purposes. This is in the 2.4 tree. [PATCH] cciss: use pci_module_init() From: mikem@beardog.cca.cpqcorp.net This patch uses the pci_module_init wrapper for hot plug cases. It is in the 2.4. tree. [PATCH] cciss: rmmod oops fix From: mikem@beardog.cca.cpqcorp.net This patch fixes an Oops when unloading the driver. Bug fix. Please consider this for inclusion. All of the patches sent out are needed to get the driver in the 2.6 tree up to the level of the driver that is in the 2.4 tree, excluding this patch which is not required in 2.4. More patches will be coming. They include multi-path failover support, support for more than 8 controllers, and msi support. Presently working on a per logical volume queueing scheme. [PATCH] ide-cd invalidate toc cache on last close Make sure that TOC gets reloaded after every last close of the device. [SUNRPC]: Use completions instead of sleep_on for rpciod. The rpciod shutdown code gives ugly sleep_on without BKL warnings in -mm. And it looks indeed somewhat racy. The easy fix would be to simply use a completion as in the patch below, but that removes all the signal fuzzing semantics the current code has. I don't really understand why we want to cancel the operation by signals, but I think it'd be better to leave that to people familar with the code anyway.. [IPV6]: Kill broken and unused IPV6_AUTHHDR support. [ECONET]: Use LL_RESERVED_SPACE() where applicable. Noticed by yoshfuji. [SCTP]: Unify URL referencing in Kconfig documentation. [NET_SCHED]: Unify URL referencing in Kconfig documentation. [IPV6]: Unify URL referencing in Kconfig documentation. [IPVS]: Unify URL referencing in Kconfig documentation. [AF_UNIX]: Print out paths correctly in /proc/net/unix, matching 2.4.x [XFS] Fix buffer teardown on _pagebuf_lookup_pages failure SGI Modid: xfs-linux:xfs-kern:166032a [XFS] Remove the lockable/not lockable buffer distinction. All metadata buffers are lockable these days. SGI Modid: xfs-linux:xfs-kern:166042a Don't read i8042 data if no data exists [XFS] Use list_move for moving pagebufs between lists, not list_add/list_del SGI Modid: xfs-linux:xfs-kern:166046a Make SET_INPUT_KEYCODE return the old value, and clean up users of this that were very confused indeed. [XFS] Remove PBF_MAPPABLE SGI Modid: xfs-linux:xfs-kern:166087a [XFS] plug a pagebuf leak SGI Modid: xfs-linux:xfs-kern:166109a [XFS] Avoid NULL returns from pagebuf_get SGI Modid: xfs-linux:xfs-kern:166207a [XFS] Fix compile warning, ensure _pagebuf_lookup_pages return value is inited. SGI Modid: xfs-linux:xfs-kern:166301a [XFS] Fix gcc 3.5 compilation for real SGI Modid: xfs-linux:xfs-kern:165783a [XFS] Add back a missing pflags check in releasepage. SGI Modid: xfs-linux:xfs-kern:166323a [XFS] Fix data loss when writing into unwritten extents while memory is being reclaimed. SGI Modid: xfs-linux:xfs-kern:166324a [XFS] Fix a trivial compiler warning, remove some no-longer-used macros. SGI Modid: xfs-linux:xfs-kern:165155a [XFS] Make more xfs errors trappable with panic_mask SGI Modid: xfs-linux:xfs-kern:164051a [XFS] Update XFS config entries - add security entry, update ACL entry. [PATCH] ide-cd: incorrect use of sector_div The recent change to ide-cd using sector div is passing the wrong type to do_div(). [PATCH] fix OOPS for multiple IDE PCI modules and CONFIG_PROC_FS=y The problem is that when loading next IDE PCI module memory used by previously registered ide_pci_host_proc_list entry is already unmapped (because of __{dev}initdata). This doesn't happen in built-in case because this memory is freed after all drivers are initialized. Fix it by removing __{dev}initdata from all ide_pci_host_proc_t. Thanks to Andre Tomt for help in debugging this. [PATCH] Fix pc300_tty.c -> implement tiocmset/tiocmget PC300 MLPPP support is currently marked broken in 2.6.x. To fix that, attached patch implements tiocmset/tiocmget methods on the pc300_tty.c driver, which is the new method tty drivers are supposed to use instead ioctl. This fixes two related issues in the ioctl handler: - ioctl requesting RTS signal would affect DTR signal - The RTS signal is now handled. Bonus: Throw out unused ioctl handler PCI: remove stupid MSI debugging code that was never used. PCI: move pci_msi.h out of include/linux to drivers/pci where it belongs. [WANROUTER]: Use LL_RESERVED_SPACE() where applicable. [PACKET]: Use LL_RESERVED_SPACE() where applicable. [IPVS]: Use LL_RESERVED_SPACE() where applicable. [IPV4/IGMP]: Use LL_RESERVED_SPACE() where applicable. [NETFILER/ipt_REJECT]: Use LL_RESERVED_SPACE() where applicable. [IPV6]: Use LL_RESERVED_SPACE() where applicable. [SCTP] Removed SCTP specific rmem/wmem sysctl's and use the global rmem_default/wmem_default values for SCTP socket buffer sizes. [PATCH] USB: re-factor enumeration/reset paths This patch starts dis-entangling some of the enumeration logic by moving initialization code into the usb_alloc_dev() constructor. Some call signatures changed; a usbcore-internal declaration was moved in to a more appropriate location. With the driver model init now more centralized, it's safer to use driver model calls (including dev_info) a lot earlier, so the "new device at address N" message now does that. It also reports the device speed, which may not be evident otherwise. [PATCH] USB: usb-storage Kconfig_URL_update Here is little URL update for Kconfig file. I hope webmaster remembers to put redirection in place next time URL changes. [PATCH] USB: drivers/usb/net config URI update and unify Here is a tiny Kconfig update and unify patch. [PATCH] USB: drivers/usb/misc/Kconfig URI update & unify: modules.txt Another little patch fixing modules.txt and fine tuning URLs. [PATCH] USB: drivers/usb/input/Kconfig URI unify Little URI unifing patch. [PATCH] USB: fix unneeded SubClass entry in unusual_devs.h On Sat, 7 Feb 2004, Brendan Arthurs wrote: > I'm getting the following message when I power on my USB external > enclosure (a MAP-K51U) with a Maxtor IDE hard drive in it. I'm running > kernel 2.6.2. Hope this is of some use to you. > > Feb 7 11:03:13 europa kernel: hub 4-0:1.0: new USB device on port 2, > assigned address 2 > Feb 7 11:03:13 europa kernel: usb 4-2: Product: USB Mass Storage > Device > Feb 7 11:03:13 europa kernel: usb 4-2: Manufacturer: Genesyslogic > Feb 7 11:03:13 europa kernel: usb-storage: This device > (05e3,0701,0002 S 06 P 50) has an unneeded SubClass entry in > unusual_devs.h > Feb 7 11:03:13 europa kernel: Please send a copy of this message > to Thank you for sending this in. Here's a patch to take care of it. Alexander, does this work for you? [PATCH] USB: fix bug number 1980 about keyspan devices not getting recognized. [PATCH] I2C: add new chip driver: fscher This is a new ported driver, fscher, which supports the FSC Hermes chip. The original driver was written by Reinhard Nissl, who also ported it to Linux 2.6, as discussed on the lm_sensors mailing list during the last two weeks. I reviewed the code and we made the necessary changes, so that what we have now looks good to me. Please apply on top of your i2c patches stack. Driver Core: fix up list_for_each() calls to list_for_each_entry() Now this should get that Rusty^Wmonkey off my back... dmapool: fix up list_for_each() calls to list_for_each_entry() Now this should get that Rusty^Wmonkey off my back... [PATCH] USB: drivers/usb/media/Kconfig URL fixups Here is patch for linux-2.6/drivers/usb/media/Kconfig. Add forward-declaration of "struct nfs4_client" to make nfs_idmap.h independent of CONFIG_NFS4 and other header files. Clean up dentry pointer validation by moving it into a function of its own. This also allows us to do a better job, since slab.c can now do more proper tests. [PATCH] NFS: fix for older gcc's From: Trond Myklebust Fix for proper C99 designated initializer, and avoid warning from missing (unreachable - but gcc doesn't know it) return. [IRDA]: Ultra sendto support. o [CORRECT] Always initialise Ultra packet/header size. o [CORRECT] Don't allow Ultra send on unbound sockets if no dest address is given. o [FEATURE] Properly support Ultra sendto on unbound sockets. [IRDA]: IrLAP disconnection pending race. o [FEATURE] Don't drop IrLAP connection is we *just* received an incomming IrLMP connection request. [IRDA]: Remove net notifier. o [FEATURE] remove unused code : device notifier handler. [IRDA]: nsc-ircc irq retval o [CORRECT] Better handling of shared IRQs in nsc-ircc driver. [IRDA]: ali-ircc irq retval o [CORRECT] Better handling of shared IRQs in ali-ircc driver. [IRDA]: smsc-ircc2 irq retval o [CORRECT] Better handling of shared IRQs in smsc-ircc2 driver. [IRDA]: via-ircc irq retval o [CORRECT] Better handling of shared IRQs in via-ircc driver. [IRDA]: w83977af_ir irq retval o [CORRECT] Better handling of shared IRQs in w83977af_ir driver. [PATCH] Remove duplicated HPPA bits in kernel/sysctl.c From: "Art Haas" The following patch removes the duplicated sysctl entries for 'soft-power' and 'unaligned-trap' for HPPA users. Immediately before these lines these two entries exist in a C99-style format. [PATCH] getxattr error checking fix From: Nathan Scott , Andreas Gruenbacher XFS regression tests tripped a couple of problems with the recent xattr fix. When a size of 0 is passed in, the getxattr and listxattr syscalls return the size that would be required for the value or list of names, without actually returning the value. The previous patch accidentally removed this test, and so querying the required size broke. Linux 2.6.3-rc2