Summary of changes from v2.6.0-test5 to v2.6.0-test6 ============================================ [Bluetooth] Send correct RPN response for accepted values This patch fixes another bug in rfcomm_recv_rpn(), which do not respond with the correct values for accepted settings. [Bluetooth] Set EA bit for V.24 signals parameter This patch always sets the EA bit along with the V.24 signals value in rfcomm_send_msc(). [Bluetooth] Handle bit rate in remote port negotiation This patch adds handling of the bit rate to rfcomm_recv_rpn(). Bluetooth: RFCOMM must send MSC when DLC was opened by SABM [Bluetooth] Fix RFCOMM C/R and Direction bits handling. MCC C/R bit does not depend on connection state. Direction bit must be set for DLCs located on the initiator. [Bluetooth] Add support for SO_LINGER to L2CAP, RFCOMM and SCO sockets. This is required to pass qualification testing. [Bluetooth] Quirk for devices with no ISOC endpoints This patch checks the existence of ISOC endpoints before it starts the URB for them. [Bluetooth] Make READ_TRANSMIT_POWER_LEVEL available for normal users This makes the HCI command READ_TRANSMIT_POWER_LEVEL available for normal users. [Bluetooth] Support for inquiry with unlimited responses This patch handles the special case if the number of responses is set to zero, which means unlimited responses. [Bluetooth] Handle command complete event for inquiry cancel The command complete event of the inquiry cancel command must clear the HCI_INQUIRY flag and finish the HCI request. [Bluetooth] Update the maintainer entries for the Bluetooth subsystem This patch puts a little bit more detailed information about the maintainers of the Bluetooth subsystem into the MAINTAINERS file. [Bluetooth] Add tiocmget() and tiocmset() routines to RFCOMM TTY This patch adds the routines tiocmget() and tiocmset() to the RFCOMM TTY layer for setting and retrieving the modem status. Adrian Bunk: Postfix an NTFS constant that is too big for an int with ULL. [Bluetooth] Add support for FCon and FCoff flow control commands This patch adds flow control support using FCon and FCoff commands to fulfil the requirements of the Bluetooth specification. Kconfig: Update NTFS-related options and help. NTFS: Update documentation for Linux kernel 2.6. ppc64: make install target from Dave Hansen ppc64: Remove find_pci_device_OFnode prototype, from Nathan Lynch ppc64: iseries soft disable and do_page_fault fixes from Ben Herrenschmidt ppc64: xics fix for I/O slot deconfigure, from Linda Xie ppc64: fixes for pci_name() changes ppc64: Fix NUMA compile after cpu bitmasks merge ppc64: remove broken xmon h option [XFS] Change xlog_verify_iclog() to use idx as zero based instead of 1 based index into array. Nathan tried this change out on some benchmarks and it seems to help - stop the assert from happening. SGI Modid: 2.5.x-xfs:slinx:156160a [XFS] Fix a case where we could issue an unwritten extent buffer for IO without it being locked, an instant BUG trigger in the block layer SGI Modid: 2.5.x-xfs:slinx:156304a [XFS] Fix a harmless typo - we were using a pagebuf flag not a bmap flag here; fortunately they have the same value (2). SGI Modid: 2.5.x-xfs:slinx:156143a [XFS] Tweak last dabuf fix, suggested by Steve, no longer uses bitfields but uchars instead SGI Modid: 2.5.x-xfs:slinx:156269a [XFS] Use the rounded down size value for all growfs calculations, else the last AG can be updated incorrectly SGI Modid: 2.5.x-xfs:slinx:155936a [Bluetooth] L2CAP qualification spec mandates sending additional config request if we receive config response with unacceptable parameters error code. So we now send dummy request to keep tester happy. [power] Fix sysfs state reporting. [power] Make sure console level is high when suspending. [power] Fix up sysfs state handling. [power] Move i386-specific swsusp code to arch/i386/power/ [power] swsusp Cleanups - do_magic() - Rename to swsusp_arch_suspend(). - Move declaration to swsusp.c - arch_prepare_suspend() - Return an int - Fix x86 version to return -EFAULT if cpu does not have pse, instead of calling panic(). - Call from swsusp_save(). - do_magic_suspend_1() - Move body to pm_suspend_disk() - Remove. - do_magic_suspend_2() - Rename to swsusp_suspend() - Move IRQ fiddling to suspend_save_image(), since that's the only call that needs it. - Return an int. - do_magic_resume_1() - Move body to pm_resume(). - Remove - do_magic_resume_2() - Rename to swsusp_resume(). - Return an int. - swsusp general - Remove unnecessary includes. - Remove suspend_pagedir_lock, since it was only used to disable IRQs. - Change swsusp_{suspend,resume} return an int, so pm_suspend_disk() knows if anything failed. [SERIAL] Add new port numbers. This adds the new port numbers which are in use in MAC and PARISC trees (so other people know they're taken.) [power] Fix device suspend handling - Handle -EAGAIN in device_suspend() properly: keep going, with error reset to 0. - Call dpm_resume() if we got a real error, instead of device_resume(), which would deadlock. [XFS] fix up xfs_lowbit's use of ffs SGI Modid: 2.5.x-xfs:slinx:156655a [power] Fix handling of pm_users. - Actually decrement on device_pm_release() - Call from device_pm_remove(). [power] Separate suspend-to-disk from other suspend sequences. - Put in kernel/power/disk.c - Make compilation depend on CONFIG_SOFTWARE_SUSPEND (should probably be renamed to CONFIG_PM_STD or some such). [SERIAL] Rename core.o and 8250_cs.o core.ko is a bad name for a module - make it serial_core.ko 8250_cs.ko continues to cause people compatibility problems with older kernels, so rename that back to serial_cs.ko [PATCH] PCI hotplug: fix up a bunch of copyrights that were incorrectly declared. It needs to be "Copyright (C)" not "Copyright (c)" according to the lawyers who know these things... [PATCH] I2C: added new id for Radeon driver. As requested by kronos@kronoz.cjb.net [PATCH] I2C: i2c-isa functionality The "functionality" return was incorrectly removed for i2c-isa.c when porting to 2.5. A driver that does nothing must return a 0 or else i2c-core assumes 0xffffffff (all functionality). [PATCH] DEVICE_NAME_SIZE/_HALF removal (I2C stuff) [PATCH] DEVICE_NAME_SIZE/_HALF removal (I2C related, but v4l stuff) [PATCH] DEVICE_NAME_SIZE/_HALF removal (I2C related, but fb stuff) [power] Make sure devices get added to the PM lists before bus_add_device(). - Prevents ordering issues when drivers add more devices ->probe(). [acpi] Move register save closer to call to enter sleep state. - By moving acpi_{save,restore}_state_mem() into acpi_pm_enter(), implying after interrupts have been disabled and nothing else is running on the system, S3 is able to resume properly. ppc64: semaphore fixes based on report by ever watchful Olaf Hering [PATCH] ia64: oprofile support I have revised the oprofile patch for ia64 to provide just the basic timer interrupt mechanism to avoid interferring with the perfmon 2.0 support. I have verified the oprofile ia64 patch applies cleanly and build a working kernel with the 2.6.0-test4 kernel and the linux-2.6.0-test4-ia64-030826.diff.bz2 patch. More work is required to get oprofile to work with the perfmon 2.0. However, the patch as it is currently implements should not cause problems for the perfom 2.0 support. [PATCH] ia64: clean up acpi_boot_init() I was confused about this bit of code in acpi_boot_init(): smp_boot_data.cpu_count = available_cpus; if (available_cpus == 0) { printk(KERN_INFO "ACPI: Found 0 CPUS; assuming 1\n"); available_cpus = 1; /* We've got at least one of these, no? */ } smp_build_cpu_map(); because it first saves available cpus in smp_boot_data, then potentially modifies available_cpus. This looked at first like a bug, but I think actually works out correctly, because smp_boot_data.cpu_count is only used in smp_build_cpu_map(), and if cpu_count is zero, it prevents us from looking at smp_boot_data.cpu_phys_id[0], which hasn't been initialized. This should only happen with really buggy firmware, so I'm not even sure it's worth doing more than panicking, but if we're going to deal with it, I propose the following patch to avoid even the appearance of a bug. This just does what acpi_parse_lsapic() would have done if the firmware tables were correct. [PATCH] ia64: fix PM config option CONFIG_PM is set without a menu entry to turn it on/off. [PATCH] ia64: Fix "nosmp" breakage from cpumask patch. Patch should be self-explanatory. [PATCH] ia64: trim.bottom trims the wrong entry efi_memmap_walk() repeatedly trims the same entry, instead of trimming each of the entries in the granule. [PATCH] ia64: perfmon2 update This patch:- added support for the fake HP simulator PMU. Most of the code provided by Ian Wienand. Allows a kernel compiled for the simulator and with CONFIG_PERFMON enabled to boot. - cleaned up all CTX_*() macros for the context state changes. - relaxed constraint for system-wide session by allowing all task with access to the context's file descriptor to manipulate the context as long as they run on the CPU the context is attached to. [swsusp] Minor cleanups in read_suspend_image() - Make resume_bdev global to file, so we don't have to pass it around (we always use the same one, so it shouldn't make a difference). - Allocate cur in read_suspend_image(), since it's the only function that uses it. - Check all errors and make sure we free cur if any happen. - Make sure to return errors from the functions called, not our own. - Free the pagedir if we hit an error after we allocate it. [swsusp] Use BIO interface when reading from swap. - bios are the preferred method for doing this type of stuff in 2.6. The __bread() uses bio's in the end anyway. - bios make it really easy to implement write functionality, so we are able to reset the swap signature immediately after checking it during resume. So, if something happens while resuming, we will still have valid swap to use. - Thanks to Jens for some help in getting it working several months ago. [swsusp] Restore software_suspend() call. - Allows 'backdoor' interface to swsusp, as requested by Pavel. - Simply a wrapper to pm_suspend(), though guaranteeing that swsusp is used, and system is shutdown (and put into low-power state). - Call in sys_reboot() changed back to call to software_suspend(). [acpi] Replace /proc/acpi/sleep - Bad to remove proc file now, even though it's nearly useless. Reinstated in the name of compatibility. - Restored original semantics - if software_suspend() is enabled, then just call that (and never go into low-power state). Otherwise, call acpi_suspend(). - acpi_suspend() is simply a wrapper for pm_suspend(), passing down the right argument. This is so we don't have to do everything manually anymore. - Fixed long-standing bug by checking for "4b" in string written in to determine if we want to enter S4bios. ppc64: remove interrupt stacks which broke when the thread info stuff went in ppc64: defconfig update ppc64: remove some unused entries in the paca ppc64: make install fixes from Dave Hansen ppc64: fix gcc 3.3 compile ppc64: Fix 3rd and 4th serial port from Olof Johansson ppc64: add missing IPC_64 mask, from sparc64 and add some compat types ppc64: Fix some error return paths in sys_ipc ppc64: add might_sleep() to uaccess functions. ppc64: register_ioctl32_conversion defined twice, fix from Olaf Hering ppc64: rtas rtc fixes from Todd Inglett ppc64: export node_data and numa_memory_lookup_table ppc64: defconfig changes ia64: Drop unnecessary fadvise64_64() bloat (it isn't needed on 64-bit platforms). ppc64: discard exit sections ppc64: fix bogus NR_CPUS*2 struct in xics.c [PATCH] I2C: Fix conversion from milli volts in store_in_reg() for w83781d.c I am not sure if it was a later patch from me that fixed in_* to display milli volts in sysfs, or if it was a patch from Jan Dittmer, but the conversion in the store_in_*() functions is wrong, and cause something like: [power] Whitespace fixes. From the -test4-mm5 tree. PPC32: Rework signal code and add a swapcontext system call. The main thing here is that the signal delivery/return code for real-time signals has been changed so that the layout of the registers corresponds with the new ucontext_t definition being used by glibc. The old ucontext_t didn't have space to actually store the registers, just a pointer to them, which made it impossible to implement set/getcontext et al. The new ucontext_t includes a mcontext_t which actually contains space to store all of the general, floating pointer and vector registers. We now also save the altivec registers on signal delivery and restore them on return from the signal if the process has ever used altivec (since the last exec). Finally this adds a swapcontext system call. Swapcontext really needs to be done in the kernel since on PPC, only privileged code can set all three of CTR, LR and NIA (next instruction address) to arbitrary values. Also the kernel know if the process currently owns the FP and altivec units and can optimize in the case where it doesn't. PPC32: Provide proper siginfo information on various exceptions. This also includes a change so that if an instruction is being single-stepped and it turns out to need to be emulated (e.g. because of an alignment exception, or because we are emulating floating-point instructions), then we need to deliver a SIGTRAP after successfully emulating the instruction and advancing NIP. PPC32: Bitmap operands to find_first/next_bit functions are const. PPC32: Fix for highmem on PPC 440 PPC32: Update the alignment exception handler for POWER4 processors ia64: Document the typo that made it into the definition of MINSTKSZ (last two numbers got transposed). Thanks to Arun Sharma for finding this. New glibc's will have the value corrected, but we leave the kernel at the old (bogus) value to retain backwards- compatibility (and while a strange value, the old value works just fine). [PATCH] ia64: perfmon2 update This patch fixes the following: - correct a bug in pfm_close() which was causing some per-process sessions to not unreserve on exit. - changed the permission checking to load a context to allow more flexibility, modeled after ptrace_attach(). ia64: Finnish adding ECC support. Based on patch by Suresh Siddah. ia64: Fix asm-ia64/acpi.h typo & name-collision. ia64: Direct sys_fadvise64() to sys_fadvise64_64(). [AGPGART] Mention Intel 875 support in Kconfig. [PCMCIA] kill flush_stale_links following Dave's guide it's replaced by calling foo_detach in foo_release if the links is stale. Note that I killed DEV_STALE_LINK aswell as DEV_STALE_CONFIG isn't ever cleared so we don't need two flags. Also some dead codepathes related to DEV_STALE_* are killed. [PCMCIA] kill dead DEV_STALE_* codepathes in non-networking drivers I guess there was some overzealous copy & pasting going on.. [PCMCIA] RL5C4XX_16BIT_MEM_0 was wrong. [PCMCIA] Remove SS_DEBOUNCED. We don't need to handle the debouncing of card insertion events anymore, so we can kill SS_DEBOUNCED. [PCMCIA] Remove a set of unused definitions. SOCKET_SHUTDOWN_PENDING, SOCKET_RESET_PENDING, SOCKET_IO_REQ and pcmcia_socket's real_clients member are all unused. ppc64: Update unhandled irq code to match x86 ppc64: start using kallsyms now its compiled in by default [PCMCIA] Drop level argument from pcmcia_socket_dev_* calls. The driver model changed recently, and instead of providing per-driver suspend/resume functionality, it now provides it on a per-bus basis. It also dropped the "level" argument. Unfortunately, platform device drivers suspend and resume methods are no longer called by the driver model, so socket drivers using platform devices won't work correctly. However, we fix them up as best we can. (hd64465, i82365, sa1100, tcic) This cset drops the `level' argument from the PCMCIA suspend/resume functions since it is now meaningless. [PCMCIA] Remove incorrect/misleading/old comments from cardbus.c ppc64: convert xmon to use kallsyms now its compiled in by default. ppc64: ppc64 Hugepage support from David Gibson ppc64: forgot to add the guts of hugetlb support ppc64: hugetlb fixes for LPAR and numa hugetlb support [PCMCIA] Remove editor droppings. PPC32: Add _IO{R,W,WR}_BAD and update _IO{R,W,WR}. [PATCH] ia64: remove unused sn2 header files This patch eliminates two unused SN2 header files: include/asm-ia64/sn/klclock.h and include/asm-ia64/sn/ioc3.h. ia64: Fix things so that they compile with the latest GCC 3.4, which optimize away static variables with no compiler-visible use. ia64: Drop unnecessary version check in sba_iommu.c. [AGPGART] Fix ATI GART for IGP9100/R300 From the folks at ATI. Some chips hang with this flush. [PATCH] ia64: misc. sn2 updates Fix a couple of sn2 files. [PATCH] ia64: fix current usage in sn2 code For some reason, we had a structure field called 'current'. This patch fixes that. [power] Simplify error handling in pm_suspend_prepare(). [power] Make sure we restore interrupts if device_power_down() fails. [power] Add support for refrigerator to the migration_thread. - The PM code currently must signal each kernel thread when suspending, and each thread must call refrigerator() to stop itself. This patch adds support for this to migration_thread, which allows suspend states to work on an SMP-enabled kernel (though not necessarily an SMP machine). - Note I do not know why the process freezing code was designed in such a way. One would think we could do it without having to call each thread individually, and fix up the threads that need special work individually.. [swsusp] Make sure we call restore_processor_state() when suspending. - Added unconditionally to exit path of swsusp_arch_suspend(). This is done to call kernel_fpu_end() to reset the preempt count on suspend. - Note that we must preserve %eax across that call. [PATCH] ia64: fix typo in spinlock.h [power] Fix swsusp with preempt and clean up. In order to snapshot memory, interrupts must be disabled. However, in order to write the saved image to disk, interrupts must be re-enabled and devices resumed. Previously, both actions were called from swsusp_arch_suspend(). This patch separates those two actions has only the snapshotting routine called from swsusp_arch_suspend(). swsusp now handles it's own disabling of interrupts only for the time required. This is now handled from swsusp_save() and swsusp_write() now handles writing the image only (called with interrupts enabled). swsusp_save_image() was renamed to swsusp_suspend() (and the old incarnation deleted since it was simply a wrapper). [PATCH] ia64: MINSIGSTKSZ on ia32 MINSIGSTKSZ is defined differently for i386 and ia64. This patch improves compatibility with apps which use sigaltstack(2) with sizes between MINSIGSTKSZ_IA32 and MINSIGSTKSZ. [PATCH] sym53c8xx driver 2.1.18 Yes, there's a lot of changes here. I've been busy :-P - Delete linux/version.h include as it's not necessary - Delete compatibility with ncr53c8xx configuration options - Convert to C99 initialisers - Delete the options: pci_parity, scsi_parity, min_sync, max_wide, max_offs, max_lun and pci_fix_up. Some were unused, some are now unused. - Delete all the default settings from sym_conf.h that were unused. - Delete host_lock abstractions. - Replace custom jiffy handling with standard ones. - Replace u_long with unsigned long - Inline scsi_data_direction() - Use ioremap directly instead of indirecting through pci_map_mem. - Delete typedefs: bus_addr_t, ucmd_p, vm_offset_t, stcb_p, slcb_p, sccb_p, shcb_p, sym_device and sym_slot. - Use min() instead of MIN() - Use memcpy() instead of bcopy(). - Delete code dependent on SYM_CONF_PCIQ_BROKEN_INTR as it's never defined. - Simplify the locking in sym_eh_handler(). - Make the eh handlers static. - Use ctype.h instead of custom variants. - Use SYM_CONF_IOMAPPED and SYM_OPT_NO_BUS_MEMORY_MAPPING in a more consistent manner. - Remove check_region() and use pci_request_region instead. - Mark sym_detach() as __devexit. - Move many includes from sym_glue.h to sym_glue.c - Stop using Scsi_Cmnd. - Stop using ../hosts.h. - Simplify *_raw definitions. - Move PA-RISC specific code into its own function. [PATCH] ia64: unwind.c fix for spinlock-debug compilation If you try to compile 2.6.0-test[45] with spinlock debugging on, then unwind.c won't compile, because it uses a #define magic that hides the variable in the spinlock debugging code (also called magic). [AGPGART] Remove unreferenced extern [SERIAL] Drop "level" argument from serial PM calls. Since the driver model has transitioned away from using multi-level device suspend/resume, we also drop the multi-level support from the serial layer. Update the 8250 and sa1100 drivers for this change. [SERIAL] Convert serial config deps to select statements The dependencies for CONFIG_SERIAL_CORE / CONFIG_SERIAL_CORE_CONSOLE were becoming very messy. This cset converts the dependencies to use "select" statements instead. [SERIAL] Fix another missing irqreturn_t (clps711x.c) [SERIAL] Introduce per-port capabilities. This allows us to maintain quirks or capabilities on a per-port basis, so we can handle buggy clones more effectively. [PATCH] compilation fix ufs Don't use C++ "argument declarations anywhere" in the kernel, even if newer versions of gcc accept it. [PATCH] sparse fix sysctl [PATCH] sparse fix eventpoll [PATCH] sparse fix cpufreq [PATCH] sparse fix xattr [PATCH] sparse fix kcore [PATCH] sparse fix ext2_readlink [PATCH] sparse fix reboot [PATCH] sparse fix for proc/misc [PATCH] sparse fix for fat/file.c [PATCH] sparse fix for kmsg [PATCH] sparse fix for proc/generic [power] Fork swsusp. The cloned implementation is in kernel/power/pmdisk.c. [power] Move PM options into kernel/power/Kconfig. - Add option for CONFIG_PM_DISK (suspend-to-disk functionality). - Other arch's should include this, instead of defining their own options. Will fixup any problems with that.. [PATCH] Fix netdev close This should fix the "ifconfig down ... ifconfig up" problems some people have seen. [PATCH] Add SEQ_START_TOKEN #define to seq_file.h Code that includes seq_file.h uses a magic pointer "(void*)1" to start a header seq_printf. This patch adds a #define, so that people can start writing more readable code. [PATCH] Fix blk_stop_queue bug Benh saw some bugs where the queue would end up being in an invalid state, and this could certainly explain one of them. We must not have a stopped queue on the plug list, and blk_plug_device() right now will happily plug a stopped queue. We don't need to have it plugged either, blk_start_queue() will make sure that request_fn gets run. [PATCH] Fix typo in fs/Kconfig [PATCH] RxRPC update Here's a patch to update the RxRPC driver. Most of it is CodingStyle fixes, but it also includes a few miscellaneous bug fixes. stdint types are also turned into C99 forms (eg: u32 -> uint32_t). [PATCH] AFS update [PATCH] ia64: cpumask_t fixes This patch coverts a few spots to use cpumask_t instead of unsigned long. [PATCH] IDE: Fix request handling with ide-default & ATAPI This fixes a bug that happens when a request gets to the IDE layer for a drive using ide-default (that is with no subdriver attached), like a Power Management request. In this case, the core will wait for the device status to match drive->read_stat, but that field contains by default a value that is not suitable for ATAPI devices. This patch fixes it. [PATCH] IDE: Fix Power Management request race on resume The current IDE Power Management code I wrote has a race on wakeup when the master device got resumed, it may take a request. At this point, a PM resume request to a slave device of the same hwgroup would clear hwgroup->rq and cause an Oops when the master device request completes. This patch fixes it. Due to the context in which PM resume requests are sent, just not clearing hwgroup->rq for these is enough. I also removed a useless debug message in the PM code that was actually misleading (people though it indicated a problem while it didn't, it's really useless) and fix a typo in a comment. dmasound update from Christoph Hellwig [PATCH] eicon ISDN driver: memory attach Access to cards memory now uses macros to attach to the correct memory area of the card. [PATCH] eicon ISDN driver: capi code fix Fix application memory allocation, module locking, building in-kernel, use new internal debug api. [PATCH] eicon ISDN driver: debug Module now can be build without debug code, necessary if the module is built-in the kernel. Fixed spelling typos. [PATCH] eicon ISDN driver: list handling Fixed internel list handling for modules built-in kernel. [PATCH] eicon ISDN driver: endianess fixed endianess errors in common code part. [PATCH] eicon ISDN driver: Kernelconfig Main divas modules now may be build in-kernel. 4BRI cards are configured together with BRI cards. [PATCH] eicon ISDN driver: C comments changed // comments to /* */ [PATCH] eicon ISDN driver: update Use different var-names if they are non-static, configure 4BRI like BRI cards, fixed new /proc entries, inline declarations for common helper functions. [PATCH] stable AGP pci_device_id tables This should fix all the AGP drivers. pci_device_id tables can not and must not be marked discardable. They are used for as long as the driver is registered. [PATCH] More buggy pci drivers This should fix all the remaining pci drivers which mark the pci device ID tables as being discardable at run time. ppc64: catch bad ioctl size at compile time, from x86 [CPUFREQ] Merge speedstep-smi driver. From: Hiroshi Miura Intel SpeedStep driver using a BIOS SMI call. Quoting his original announcement: "This driver is based on the information from 1. Microsoft Windows XP Document. we can get the SMI interface values from ax=E980/int15 BIOS call. 2. Intel SpeedStep Applet Document.(from HP.com) http://h18007.www1.hp.com/support/files/evonotebook/us/download/10631.html " Adds code to request transition ownership when processing the system critical resume message. When a critical hibernate occurs, the Applet does not receive any system level notification. The change forces the Applet to re-acquire transition ownership upon resume from a critical hibernate. " This is informative. This saied that something 'ownership' call is needed on SMI interface first. 3. Grover, Andrew's int 15h patch posted to cpufreq ml Message-ID: code which call BIOS to get SMI values. I included it. 4. Malik Martin's rev engineering results. call is made with BX, CX, EDI register values. and need signature 'ISG' when call. find function values. bx=1(get) and bx=2(set) 5. Marc Lehmann's 'speedstep' utility, sample of assembler code to call SMI. 6. My work. find function to return max/min freq which system supportd. (bx=4) more values are gotten, but I cannot understand... find 'ownership' function value(bx=0, which is other than 1 2 4..). ToDo(in pregress) support governor "auto" and using smi_event call, imprement auto freqchange feature. test on 440BX/ZX platform. Memo module parameters are override result of an int 15h/eax=E890h call. these parameter value are gotten from Windows XP registory." Also includes some bugfixes, updates and workarounds from me. NB: A lot of BIOS out there are buggy. You might want to try this driver also with Intel's default values -- smi_cmd = 0x82 and smi_port = 0xb2 [PATCH] ATM Ambassador no longer BROKEN_ON_SMP Chas Williams fixed the compilation on SMP, so we can remove the Kconfig annotation now and let people select it in the build again. [PATCH] PA-RISC update for 2.6.0-test5 PA-RISC updates for 2.6.0-test5. Contributions from Paul Bame, James Bottomley, Randolph Chung, Helge Deller, Grant Grundler, LaMont Jones, Matthew Wilcox [CPUFREQ] remove $Id$ tags, update filenames [CPUFREQ] add cpufreq_update_policy() Add a new cpufreq_update_policy call: Certain cpufreq policy notifers have different needs at different times. Thus it needs to be possible to re-evaluate an already set cpufreq policy. Note that the cpufreq policy should only be set by one person: the user. Not any other in-kernel code [with one exception, of course: during booting]. [PATCH] Fix CONFIG_PCMCIA_WL3501 with older compilers We only support named initializers with one leval of naming, ie that .foo.bar = baz, thing should go. gcc-2.95 doesn't handle it (neither does sparse, I think). Replace such initializers with .foo = { .bar = baz, }, instead. [power] Make pmdisk compilable and usable. - Fork arch/i386/power/swsusp.S into arch/i386/power/pmdisk.S - Change name of all externally visible swsusp_* functions to pmdisk_* - Make pm_suspend_disk() call pmdisk_ functions. - Make sure pmdisk.o is compiled if the config option is set. - Add CONFIG_PM_DISK_PARTITION option, which allows user to compile in default resume partition. - Add pmdisk= setup option, which allows user to override or disable default resume partition. - Change name of global names in pmdisk that conflict with those in swsusp. ppc64: Give us a generic local.h until we have atomic64 [PATCH] fix cpu_test_and_set() on UP cpumask_up.h is broken. It tries to access the "mask" member although that cpumask_t is an ulong on UP. This breaks archs which uses cpumask functions even on UP such as s390. [PATCH] Get rid of Intermezzo warning There is a leftover MOD_DEC_USE_COUNT intermezzo, with no matching _INC_ anywhere. Since it sets owner on the file system operations there should be no need for explicit module manipulation. [PATCH] Fix modularization of Siemens line discipline Convert SIEMENS R3964 tty line discipline on 2.6.0-test5 to use tty_ldisc owner instead of explicit MOD_INC/DEC. And fix the initializer to be a much more readable C99 one. [power] Make pmdisk compile when CONFIG_SOFTWARE_SUSPEND=n. [power] Revert swsusp to 2.6.0-test3 state. - From Pavel (mostly, though with some fixups). - Note that I would never publically admit to putting such code into the kernel. - Someone ought to really review this patch some day. [swsusp] Fix software_suspend() inline return value when SOFTWARE_SUSPEND=n. [PATCH] Use SEQ_START_TOKEN in drivers/net/* [1/3] [PATCH] Use SEQ_START_TOKEN in include/net/* [2/3] [PATCH] Use SEQ_START_TOKEN in include/net/* [3/3] Make rxrpc use SEQ_START_TOKEN. [PATCH] wl3501 with old compiler Fix the ## handling to work with old gcc versions (spaces around the ',' to make token boundaries work). [PATCH] ia64: update Kconfig comment for NR_CPUS From Stephen Hemminger: we were trying to cast an "unsigned short" to a pointer. That was a typo. Ack'ed by Al Viro. Fix ray_cs for new interrupt handling. Damn 16-bit PCMCIA layer has no type checking. Complete crap. [PATCH] s/spin_lock_irqrestore/spin_unlock_irqrestore From: Vinay K Nallamothu Fix a couple of cut-n-paste errors. (Why on earth is a scsi driver poking at the RTC hardware?) [PATCH] calibrate_tsc() fix and consolidation From: "Pallipadi, Venkatesh" CONFIG_TIMER_CYCLONE doesn't build at present because calibrate_tsc() was made static. The patch fixes that up and moves all calibrate_tsc functions into a common file, avoiding the current code duplication. [PATCH] Initialise devfs_name in various block drivers From: Andrey Borzenkov Various block drivers are currently devfs-unaware. Andrey's patch attempts to give them reasonable representations in devfs. "The attached patch suggests some possible names for non-floppy devices based on reading driver source. I have to ask if these make sense. At least for cciss Mandrake devfsd patch expects different names but it seems to be mistake (it assumes single controller always) "For floppy it is not as simple. Floppy cannot use genhd and must create names manually; but I do not know what names are appropriate or expected. "For acsi the target/lun name may have problem of creating compat names (if any) by devfsd. "Please note that none of them created any devfs name under 2.4 as well. So it is not a regression ..." [PATCH] monolitic_clock, timer_{tsc,hpet} and CPUFREQ From: Dmitry Torokhov I noticed that although timer_tsc registers cpufreq notifier to detect frequency changes and adjust cpu_khz it does not set cyc2ns_scale. [PATCH] dac960 devfs_name initialisation fix From: Andrey Borzenkov DAC960.c does it incorrectly (at least in 2.6.0-test4). It will create _directory_ /dev/rd/cNdM making it impossible to create compat block device entry with the same name. The right thing it to create separate directory for each controller/target as in attached trivial patch (untested due to lack of hardware). You will need devfsd support for this but then you will need it for cciss or cpqarray as well and possibly for others. Which returns us to the problem of devfsd maintenance ... [PATCH] compiler warning fixes for DAC960 on alpha From: Dave Olien This patch is forwarded from Jay Estabrook at HP. I've compiled the patch on ia32 and ia64 machines and it's good. I also recreated the patch so it would apply to mm5 without fuzzy offsets. Here's Jay's summary of the patch: Here's a very small set of patches against 2.6.0-test4 that help the DAC960 driver compile cleaner (gets rid of warnings on Alpha) and help it to work on some old OEM'ed DAC960 cards that were sold in our older Alphas. The warnings are all concerned with "conversions to different size without cast", as pointers and longs are same size (8-bytes) but ints are 4-bytes, on Alpha. I don't believe the change to (long) from (int) will affect any 32-bit architectures, but those using LP64 like Alpha, ie SPARC64 and prolly IA64, will have the warnings go away. The change to make the oldest acceptable firmware version 2.70 instead of 2.73 is made spcific to Alpha, since it is only those cards that DEC OEM'ed from Mylex that would have such (as explained a bit better in the patch itself). [PATCH] Move ikconfig to /proc/config.gz From: "Randy.Dunlap" The SuSE kernels place their ikconfig info at /proc/config.gz: in a different place, and compressed. We thought it was a good idea to do it that way in 2.6 as well. - gzip the /proc config file, put it in /proc/config.gz; - Based on a SuSE patch by Oliver Xymoron , which was derived from a patch by Nicholas Leon - change /proc/ikconfig/built_with to /proc/config_build_info; - cleanup ikconfig init/exit entry points (static, __init, __exit); - Makefile help from Sam Ravnborg; DESC ikconfig cleanup EDESC From: Stephen Hemminger Simplify and cleanup the code: - use single interface to seq_file where possible - don't need to do as much of the /proc interface, only read - use copy_to_user to avoid char at a time copy - remove unneccesary globals - use const char[] rather than const char * where possible. Didn't change the version since interface doesn't change. [PATCH] reiserfs direct-IO support From: Oleg Drokin This patch implements DirectIO support for reiserfs v3. This is mostly a port from 2.4. Thanks to Mingming Cao from IBM for some clues in porting. [PATCH] Fix imm.c again From: Adrian Bunk Earlier patch wasn't correct especially in the !CONFIG_SCSI_IZIP_EPP16 case, reading all uses of this array (IMM_MODE_STRING is used to print the corresponding string in printks). If I'm not misunderstanding it, CONFIG_SCSI_IZIP_EPP16 means "use 16bit even when 32bit is requested". It seems the right solution is static char *IMM_MODE_STRING[] = { [IMM_AUTODETECT] = "Autodetect", [IMM_NIBBLE] = "SPP", [IMM_PS2] = "PS/2", [IMM_EPP_8] = "EPP 8 bit", [IMM_EPP_16] = "EPP 16 bit", #ifdef CONFIG_SCSI_IZIP_EPP16 [IMM_EPP_32] = "EPP 16 bit", #else [IMM_EPP_32] = "EPP 32 bit", #endif [IMM_UNKNOWN] = "Unknown", }; [PATCH] make selinux enable param config option, enabled by From: James Morris This patch against current bk makes the recently added SELinux boot parameter feature a configurable option, and enables SELinux by default when selected. These changes were made following feedback including discussion on the SELinux list. The rationale for the changes is to allow SELinux to be be configured and enabled unconditionally. If the boot parameter option is selected, then SELinux is now enabled unless selinux=0 is specified at the kernel command line. [PATCH] sound: remove duplicate includes From: "Randy.Dunlap" remove duplicate #includes in sound/ [PATCH] remove duplicate includes in kernel/ From: "Randy.Dunlap" remove duplicate #includes in kernel/ [PATCH] Handle NR_CPUS overflow From: john stultz Don't try to support more than NR_CPUS cpus: things overflow. Also, increase the default in config for some architectures. (Dave Hansen). [PATCH] ppp devfs oops fix From: Christoph Hellwig PPP leaves the chardev registered even if we're going to fail the modprobe. [PATCH] d_delete-d_lookup race fix From: Maneesh Soni d_delete() calls dentry_iput() after releasing the per dentry lock. This can race with __d_lookup and lead to situation where we can make dentry negative with ref count > 1. The following patch makes dentry_iput() to hold per dentry lock till d_inode is NULL and dentry has been removed from d_alias list. [PATCH] ia32 idle using PNI monitor/mwait From: "Nakajima, Jun" Attached is a patch that enables PNI (Prescott New Instructions) monitor/mwait in the kernel idle handler. [PATCH] remap file pages MAP_NONBLOCK fix From: Rajesh Venkatasubramanian The remap_file_pages system call with MAP_NONBLOCK flag does not install file-ptes when the required pages are not found in the page cache. Modify the populate functions to install file-ptes if the mapping is non-linear and the required pages are not found in the page cache. Patch is for test4-mm6. Compiles and boots. Patch tested using the programs at: http://www-personal.engin.umich.edu/~vrajesh/linux/remap-file-pages/ [PATCH] install_page pte use-after-unmap fix From: Rajesh Venkatasubramanian Don't deref the pte pointer after having kunmapped the memory it points at. [PATCH] really use english date in version string From: Andrey Borzenkov LANG is not always enough to force date to english. [PATCH] tidy up lib/inflate.c error messages From: Andre McCurdy There is some inconsistency within lib/inflate.c and its users about whether the error message text or the error() function should provide the '\n'. This patch tries to make everyone consistent - by removing the newline from all message texts, and adding one to the only error() function which did not provide it (in init/do_mounts_rd.c). [PATCH] ext3: remove debug code ext3 has fancy test harness code which allows you to simulate crashes (for testing recovery). It will make the underlying disk start ignoring writes a specified number of seconds after the mount. It's inoperative without an additional offline patch anyway, and it's doing hacky things which scared Al. So kill it; I'll maintain it in the separate ext3 debug patch. [PATCH] mwave locking fixes From: Manfred Spraul The mwave driver uses a user space daemon for some modem operations. The user space daemon calls ioctl(,IOCTL_MW_GET_IPC), and the driver returns after an interrupt arrived. The actual wait used interruptible_sleep_on(), which can lead to lost wakeups. A local spinlock on the stack is used to close that race, but this is broken on SMP, perhaps even with preempt. The attached patch fixes that by switching to the normal add_wait_queue/test_if_race_occured/schedule/remove_wait_queue sequence. [PATCH] fix Summit srat.h includes From: Dave Hansen I was compiling for my plain 'ol PC, and was getting unresolved symbols for get_memcfg_from_srat() and get_zholes_size(). The CONFIG_NUMA definition right now allows it to be turned on for plain old X86_PC. Does anyone know why this is? depends on SMP && HIGHMEM64G && (X86_PC || X86_NUMAQ || X86_GENERICARCH || (X86_SUMMIT && ACPI && !ACPI_HT_ONLY)) In any case, the summit code incorrectly assumes in at least 2 places that NUMA && !NUMAQ means summit. Someone was evidently trying to cover the generic subarch case, but that's already taken care of by the lovely config system and CONFIG_ACPI_SRAT. This patch fixes those assumptions and adds a nice little warning for people that try to #include srat.h without having srat support turned on. [PATCH] Reduce random driver lock contention From: Matt Mackall The new locking in the random driver is consuming 60% of CPU resources in Anton's monster power5 boxes. Basically, when the primary pool is 7/8th full, we shut off the firehose and go into a trickle mode to keep the pool fresh. Saves CPU for everyone and should make the contention drop off the charts too (though the trickle factor might need adjusting again for Origin-class machines). [PATCH] sys_fadvise needs asmlinkage [PATCH] CPU scheduler CAN_MIGRATE fix From: Andrew Theurer This change: http://linux.bkbits.net:8080/linux-2.5/diffs/kernel/sched.c@1.202 does not seem to make sense: #define CAN_MIGRATE_TASK(p,rq,this_cpu) \ ((!idle || (jiffies - (p)->last_run > cache_decay_ticks)) && \ !task_running(rq, p) && \ cpu_isset(this_cpu, (p)->cpus_allowed)) It should be just the opposite; an idle cpu should be able to have a more aggressive steal, and a busy cpu should not. [PATCH] get rid of warning in gscd From: Stephen Hemminger Compiler warning due to missing equal sign. [PATCH] blk API update (and bug fix) to CDU535 cdrom driver This is a lot better than what is there know. From: Felipe W Damasio - cli-sti removal - blk API update - set_current_state - Remove 'panic' line. .. and we can now remove the BROKEN_ON_SMP Kconfig annotation. [power] Fix ACPI sleep handling with swsusp. [PATCH] Fill in ELF OSABI in ELF headers This fills in the ELF EI_OSABI field. This doesn't matter for most architectures, but PA-RISC uses the Linux flavour of the ABI (since HPUX uses the None flavour). Patch by Randolph Chung. [PATCH] Eicon ISDN driver: removed __devinitdata from pci_device_id. pci_device_id can not be marked __devinitdata, was re-added with last update by accident. [PATCH] Remove modules.txt Thanks to Stephen Hemminger for pointing out how obsolete modules.txt is. modules.txt contains mainly ancient information which is replicated in the kconfig help message, README, makefile.txt or the modprobe manual page. The only part which is not covered elsewhere is the "building external modules" which is still being debated (and belongs under the kbuild docs). kmod.txt reference removed from index, too. [PATCH] fix oops in hvc_console tty_register_driver already calls tty_register_device so there is no need to do it in hvc_console. Besides, it oopses when we do that. [PATCH] Fix initramfs permissions on directories and special files Set correct permissions on initramfs directories and special files. We dont want to obey the umask here, so do the same thing we do on normal files - call sys_chmod. [PATCH] quieten initramfs and fix /dev permissions Dont print the contents of the initramfs, for any decent sized cpio it will overflow the kernel ring buffer. Also relax permissions on /dev (755 not 700). [PATCH] 1GB stack size limit on PA-RISC This patch introduces a 1GB stack size limit for stack-grows-up (ie PA-RISC), as discussed previously. [PATCH] fs/exec.c whitespace cleanups Whitespace cleanup (mostly deleting trailing whitespace). [PATCH] interrupt.h needs kernel.h uses barrier() but does not include . kbuild: Save relevant parts of modules.txt The out-dated modules.txt were deleted from the kernel, save the kbuild related bits in Documentation/kbuild. It needs more updates, but for now this is better than nothing [ARM PATCH] 1653/1: Simpad Flash Partition resubmit Patch from Holger Freyther This the the resubmit of the flash partition changes for SIMpad. Two versions one for cramfs one for all jffs2 and also the SIM has two banks instead of one even if they're next to each other... bk: Ignore scripts/bin2c bin2c is used by ikconfig [ARM PATCH] 1654/1: Simpad PCMCIA resubmit Patch from Holger Freyther This fixes initialization of PCMCIA for the SIMpad unsigned long now user for the flag [ARM PATCH] 1656/1: Simpad board update to make it work Patch from Holger Freyther Make it work ;) kconfig: Allow architectures to select board specific configs This patch introduces the framework required for architectures to supply several independent configurations. Three architectures does this today: ppc, ppc64 and arm. The infrastructure provided here requires the files to be located in the following directory: arch/$(ARCH)/configs The file shall be named _defconfig To select the configuration for ppc/gemini simply issue the following command: make gemini_defconfig This will generate a valid configuration. ppc and ppc64 already comply to the above requirements, arm needs some trivial updates. kbuild: Build minimum in scripts/ when changing configuration From: Ricky Beam , me With the increasing amount of programs located in scripts/, several of which is dependent on the kernel configuration, it makes sense to avoid building these too often. With this patch only fixdep is build, the minimal requirement for running any *config target kbuild: Remove cscope.out during make mrproper From: "Nathan T. Lynch" The attached patch fixes the toplevel Makefile to remove cscope.out during make mrproper. The default name for the database that cscope creates is cscope.out, and this is what the cscope rule in the makefile uses. Currently, mrproper will leave cscope.out behind, which can make for interesting diffs... kbuild/ppc*: Remove obsolete _config support [PATCH] Fix SEQ_START_TOKEN typo My fault. Fix for broken aarp.c which got an extra closing parenthesis. [PATCH] Eicon ISDN driver: remove old devfs_handle devfs_handle is not used any more. PPC32: Allow for boards to flush / disable L2 / L3 in the bootwrapper. [power] pmdisk cleanups - Get rid of silly DEBUG flags. - Change PRINTK to standard pr_debug(), - Get rid of MDELAY - Change many printk()s to pr_debug()s, and add 'pmdisk:' prefix. - Remove option to mark_swapfiles() on resume, since it's handled implicitly. [ARM] Update SA1111 Combine the two initialisation functions, allow SA1111 to be built as a module, and remove a redundant SA1111 function prototype. [PATCH] another keyboard problem solved A colleague reported that the keyboard of his brandnew laptop is dead under 2.6 while 2.4 works. Now I once wrote In order to avoid interference between scancode sequences or mouse packets and the reponses given to commands, the keyboard or mouse should always be disabled before giving a command that requires a response, and probably enabled afterwards. Some keyboards or mice do the disable automatically in this situation, but still require an explicit enable afterwards. (http://www.win.tue.nl/~aeb/linux/kbd/scancodes-9.html) This is what happens on this laptop. The routine atkbd_probe() probes for a keyboard, and after detecting it, enables it. But immediately afterwards the routine atkbd_set_3() reads the current scancode set and sets the desired set, and as a side effect of these commands, the keyboard gets disabled again. Thus, the keyboard enable must be moved after all command sending has been done. Now that I patch this area anyway: we are almost always in scancode set 2 but send the ATKBD_CMD_SETALL_MB command that only works in scancode set 3. At best this is useless. At worst it confuses the keyboard. So, I put this command in a separate routine and call that only when we really are in scancode set 3. kbuild: Separate output directory Separate output directory support enables the following (at least): o Building several configurations from the same SRC base, and in parrallel o Building from a RO media o More efficient build if files are retreived via NFS (files stored locally) Usage is simple: cd /path/to/kernel/src mkdir ~/build/kernel make O=~/build/kernel [Make options] Please note: The O= syntax must be used for ALL invocations of make. As an alternative you may set KBUILD_OUTPUT to the directory where to put the output files. The patch works for me, and I have tried with various configurations, including allnoconfig and defconfig. How it works: If the O= option is used, or KBUILD_OUTPUT is set then a second invocation of make happens in the output directory. The second invocation of make uses VPATH to tell make where to locate the files. Furthermore include options for gcc is modifyied to point both in the directory where the kernel src is located, and in the directory where the output files are located. The latter is used for generated .h files. When building the kernel the asm symlink is created. To support this a new 'include2' directory is created. Within include2/ asm is a symlink to the asm-$(ARCH) directory in the kernel src. Also when building the kernel the asm-offset.h file is created, and located in the include/asm-$(ARCH) directory, but included via . Therefore within include/ another asm symlink is created pointing to the asm-$(ARCH) directory located in the output directory. In Makefile.build the output directory is created if not already present. This was needed to support xfs, and oprofile. The patch is loosly based on ideas from Kai G. Roman Zippel introduced support for this in kconfig long time ago [PATCH] ps2esdi broken The PS/2 ESDI driver has some problems: a couple of typos on the modular side and misuse of module_init(): [PATCH] Badness in as_completed_request warning Thish fixes Suparna's fsx and aio-stress and Dave Olien's concurrent mke2fs problems. It moves the hash adding into as_add_request. This fixes a small bug where a request could be added to the merge hash after being put on the dispatch list. It also moves responsibility for handling rbtree aliases (requests with the same start sector) out of as_add_arq_rb and into its caller. This cleans up a layering problem which was causing the state machine to go silly. Now instead of forcing the alias out onto the dispatch list, we chain the new request behind it, and they get sorted out at dispatch time. [bonding 2.6] fix 802.3ad long fail over with high UDP Tx stress [bonding 2.6] fix load balance problem with high UDP Tx stress [bonding 2.6] fix ARP monitoring bug [bonding 2.6] fix kernel panic when optional feature used [bonding 2.6] fix change active command [bonding 2.6] fix OOPS in bonding driver, when removing primary [bonding 2.6] embed stats struct inside bonding private struct [bonding 2.6] fix error handling in init code [bonding 2.6] make each bond device use its own /proc entry [bonding 2.6] misc fixes: missing include, typos, comments [e1000] new 82541/5/6/7 hardware support * Added 82545 (rev3), 82546 (rev3), and 82541/7 (rev2) support - new device IDs - internal SERDES support for 82545/6 (rev3) - don't apply MMRBC workaround for 82545/6 (rev3) - don't use IO mapping for reset for 82545/6 (rev3) [e1000] 82544 PCI-X hang fix + TSO updates * Bug fix: 82544 hang with PCI-X: if outgoing Tx buffers terminate within evenly-aligned dwords, and the device is sharing the bus segment with another PCI-X device, 82544 can hang the bus on a split-completion transaction. Fix is to split buffer into two buffers with the first one not terminating within evenly-aligned dword address, and the second one being 4-bytes, which goes as a non-split-conpletion PCI-X transaction. * 8254x controllers that support TSO do an internal calculation to make sure there is enough FIFO space to handle the overhead of each TSO segment before DMA'ing TSO data from host memory. The internal calculation is dependent on the mss of the TSO (defines the number of segments), but the reserved space is a constant, so we need to adjust the maximum size of each buffer queued to the hardware to hold the equation and not overrun the FIFO. This is per TSO because the mss can change from one send to the next. [e1000] Turn off ASF support on Fiber nics * Turn off ASF support on fiber nics. Wasn't tested and isn't known to work, so disable before someone hurts themselves. [e1000] read correct bit from EEPROM for getting WoL settings * Bug fix: read the correct bit from the EEPROM that controls the initial setting for WoL after a reset. [e1000] add ethtool flow control support * Add ethtool flow control support [e1000] make function our of setting media type * Consolidate code and make function out of setting media type. [e1000] cleanup error return codes * clean up error return code propagation and eliminate redundant DEBUGOUT statements. [e1000] move static to table from .h to .c * Move static table from hw.h to hw.c to avoid creating a copy of table everytime hw.h is included.in .c. [e1000] Add PHY master/slave #define override * Add PHY master/slave #define override to address link issues with 82541/7 (rev2) against some low-end switches. Forcing master will improve the time-to-link against these switches. [e1000] misc whitespace cleanup, changelog * misc whitespace cleanup, changelog [PATCH] tr/olympic probe: remove #warning, improve error handling This patch to 2.6.0-test5 removes the #warning in tokenring/olympic.c and improves error handling in the probe function. [PATCH] slip.c: current state cleanup [PATCH] fix build of cosa The cosa driver definition of ioctl's either conflicts or was not picked up in the last round of _IOR redefinition (on 2.6.0-test5). The following makes it build, have no idea if it still works on real hardware. [PATCH] (1/4) sdla - move out of Space.c Patch against 2.60-test5 to move sdla driver out of Space.c for initialization in non-module case. Since this driver doesn't come up until the device has been configured with an ioctl (set_config); there is no way it can have startup order problems. [PATCH] (2/4) get rid of register_frad The sdla and dlci drivers have a callback interface which only stores a name in a table, but doesn't do anything useful. Looks like an interface which has lost it's usefulness and can be safely removed. Tested on 2.6.0-test5 by exercising the higher layer (dlci) without real hardware. [PATCH] (3/4) dlci locking and registration changes Change the locking for the dlci device list and registration. - use RTNL instead of a private lock (needed for net notifier in next patch). - reorder the checks in the dlci_add to avoid complicated unwinds - use dev->destructor to free - hold RTNL around deassoc to protect callback from races [PATCH] (4/4) dlci netdevice event handling Since dlci device is a pseudo device built on top of sdla, change it to handle unregister events and delete itself. [PATCH] (5/4) dlci netdevice event handling One more patch, found this in testing -- need to delete device from list when unregistered because of callback. [PATCH] (1/4) sdla - move out of Space.c Apply on top of 2.6.0-test5-bk1 + Stephen sdla patches. Compiles fine. free_netdev() patrol. drivers/net/wan/sdla.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) [PATCH] PCI: make new_id rely on CONFIG_HOTPLUG > > These either need to be marked __devinit and make "new_id" dependant on > > CONFIG_HOTPLUG Patch below moves all the new_id code under CONFIG_HOTPLUG. Tested with both CONFIG_HOTPLUG enabled and disabled. No significant code changes, merely code moving, and in 2 cases, stub functions added. [PATCH] PCI: remove compiler warning from previous new_id patch Also change the #define functions into inline functions to help catch any future paramater mis-matches. And clean up a few minor style issue... PCI: fix up some pci drivers that had marked their probe functions with __init This also required some other functions and variables to be marked as __devinit [NET]: Various /proc/net/* files may drop some data. [NET]: /proc/net/if_inet6 may drop some data. [NET]: Clean up /proc/net/{anycast6/igmp6}. [CRYPTO]: Add alg. type to /proc/crypto output. [NETFILTER]: Clear nf_debug in ipsec tunnel case. [ATM]: Remove unnecessary GFP_ATOMIC allocation (from levon@movementarian.org) [ATM]: Fix build failure with ATM_BR2684_IPFILTER enabled. [NETFILTER]: Fix typoe in ip_nat_tftp.c [NET]: Remove some unnecessary proc_fs.h includes [NET]: Convert packet scheduler API to seq_file. [NET]: Kill unneded version.h in net/sched. [IPV4]: Fix wrong IP address in icmp.c error message. [XFRM]: Fix ALLOC_SPI for IPCOMP. [NET]: Remove spurious TASK_RUNNING setting after schedule_timeout(). [NET]: Use proc_net_fops_create() and proc_net_remove() in net/core. [NET]: Use proc_net_fops_create() and proc_net_remove() in net/ipv4. [NET]: Use proc_net_fops_create() and proc_net_remove() in net/ipv6. [BRIDGE]: Clear hw checksum flags when bridging. [SPARC64]: Fix VT/VT_CONSOLE Kconfig for headless operation. [ATM]: seq_file for /proc/net/atm (devices) [1/8] (from romieu@fr.zoreil.com) seq_file conversion for proc/atm/devices: - code inspired from seq_file use in net/core/dev.c; - atm_dev_lock taken/released in atm_dev_seq_{start/stop}; - add a helper CREATE_SEQ_ENTRY() similar to CREATE_ENTRY() (both are removed once conversion is done). - atm_dev_seq_{start/stop/next} done in net/atm/resource.[ch] to ease future handling of atm_devs and locking structure (per Chas suggestion) [ATM]: seq_file for /proc/net/atm (vc utils) [2/8] (from romieu@fr.zoreil.com) Helpers for seq_file conversion of proc/atm/{pvc/svc/vc}: - struct vcc_state keeps 1) the struct sock from which the current struct atm_vcc is deduced 2) the family to which must belong the vcc (PF_ATM{SVC/PVC/any}) 3) the availability of clip module - vcc_seq{start/stop} are responsible for vcc_sklist locking - __vcc_seq_open and vcc_seq_release take care of get/put for the clip module. Chas's suggestions applied since last version: - atm_vc_xxx renamed to vcc_xxx - atm_vc_common_seq_open renamed __vcc_seq_open (future name clashes avoidance) [ATM]: seq_file for /proc/net/atm (pvc) [3/8] (from romieu@fr.zoreil.com) seq_file support for /proc/net/atm/pvc: - pvc_info(): seq_printf/seq_putc replaces sprintf; - atm_pvc_info() removal; - the vc helpers (vcc__seq_xxx) do the remaining work. Chas's suggestions applied since last version: - atm_pvc_xxx renamed to pvc_xxx - atm_seq_pvc_fops renamed to pvc_seq_fops [ATM]: seq_file for /proc/net/atm (svc) [4/8] (from romieu@fr.zoreil.com) seq_file support for /proc/net/atm/svc: Exactly same comments as pvc. Just s/p/s/ [ATM]: seq_file for /proc/net/atm (vc) [5/8] (from romieu@fr.zoreil.com) seq_file support for /proc/net/atm/vc: Same comments as for pvc and svc. Extra Chas's suggestion applied since last version: - atm_vc_xxx renamed to vcc_xxx. [ATM]: seq_file for /proc/net/atm (arp) [6/8] (from romieu@fr.zoreil.com) seq_file support for /proc/net/atm/arp: - svc_addr/atmarp_info(): seq_printf/seq_putc replace sprintf and friends; - arp_getidx/arp_vcc_walk() take care of the usual seq_file cursor positionning: they both return NULL until the cursor has reached its position. struct atm_arp_state is updated accordingly; - arp_seq_{stop/start} are responsible for clip_tbl_hook (un)locking; - module refcounting is done in arp_seq_open()/arp_seq_release(); - atm_lec_info() is removed. Chas's suggestions applied since last version: - atm_arp_xxx renamed to arp_xxx; - atm_seq_arp_fops renamed to arp_seq_fops. Chas didn't ask for it but I renamed arp_vc_walk to arp_vcc_walk. [ATM]: seq_file conversion of /proc/net/atm [7/8] seq_file support for /proc/net/atm/lec: - lec_info(): seq_printf/seq_putc replaces sprintf; - traversal of the lec structure needs to walk: -> the lec interfaces -> the tables of arp tables(lec_arp_tables); -> the arp tables themselves -> the misc tables (lec_arp_empty_ones/lec_no_forward/mcast_fwds) Sum up of the call tree: atm_lec_seq_start()/atm_lec_seq_next() -> atm_lec_get_idx() -> atm_lec_itf_walk() (responsible for dev_lec/dev_put handling) -> atm_lec_priv_walk() (responsible for lec_priv locking) -> atm_lec_arp_walk() -> atm_lec_tbl_walk() -> atm_lec_misc_walk() -> atm_lec_tbl_walk() Each of the dedicated functions follows the same convention: return NULL as long as the seq_file cursor hasn't been digested (i.e. until < 0). Locking is only done when an entry (i.e. a lec_arp_table) is referenced. atm_lec_seq_stop()/atm_lec_itf_walk()/atm_lec_priv_walk() are responsible for getting this point right. - module refcounting is done in atm_lec_seq_open()/atm_lec_seq_release(); - atm_lec_info() is removed. Chas's suggestions applied since last version: - atm_seq_lec_fops renamed to lec_seq_fops; - change in state handling: it wasn't correctly set to its reset value after a complete interface walk; - lec_arp_get_status_string() bugfix. [ATM]: seq_file conversion of /proc/net/atm [8/8] (from romieu@fr.zoreil.com) - introduction of the struct array 'atm_proc_ents': - removal of code duplication in atm_proc_cleanup(); - removal of code duplication in atm_proc_init(); - removal of the macros CREATE_SEQ_ENTRY() and CREATE_ENTRY(); - /proc/net/atm/vcc returns to /proc/net/atm/vc; - credits at the top of the file; - replaced proc_dev_atm_operations by proc_atm_dev_ops; - atm_proc_dev_register: removal of tasteless "fail0/fail1" labels. [ATM]: exporting llc_oui[] isn't worth it (from mitch@sfgoth.com) [SPARC32]: Non-controversial gcc-3.3 build fixes. [IPV6]: Fix non-CONFIG_PROC_FS build. [SPARC32]: Ignore btfixups in .text.exit [BLUETOOTH]: Fix bug in set_sk_owner() changes. [SPARC64]: BUG on positive addresses in vga.h [NETFILTER]: MASQUERADE target for mostly-static IP addresses. Herve Eychenne noted that many ADSL connections get the same address when the interface comes back up, so some users use SNAT instead of masquerade. The answer is that MASQUERADE should only drop connections when the interface comes up, and then only if the interface address has actually changed. [NETFILTER]: REJECT nonlinear fixes after sync with 2.4 Harald synced up ipt_REJECT.c from 2.4 route fixes, but it had changed a fair bit because of the nonlinear fixes. This repairs it. 1) Copying of tcp header onto stack. 2) ...which also checks length requirement. 3) Skip checksum check: requires linear packet. [SPARC64]: Update defconfig. [Bluetooth] Convert BNEP protocol to dynamic allocation of network devices. This will allow fixing races with rmmod and sysfs access. Patch from Stephen Hemminger [PATCH] Fix imm.c again From: Adrian Bunk Earlier patch wasn't correct especially in the !CONFIG_SCSI_IZIP_EPP16 case, reading all uses of this array (IMM_MODE_STRING is used to print the corresponding string in printks). If I'm not misunderstanding it, CONFIG_SCSI_IZIP_EPP16 means "use 16bit even when 32bit is requested". drivers/scsi/imm.h | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) [PATCH] serialize bus scanning Change scsi_scan_mutex from global to per host, which is needed for parallel SCSI probe. gr16_work-anton/drivers/scsi/hosts.c | 2 ++ gr16_work-anton/drivers/scsi/scsi_scan.c | 15 ++++----------- gr16_work-anton/include/scsi/scsi_host.h | 6 ++++++ 3 files changed, 12 insertions(+), 11 deletions(-) [PATCH] enable aha152x to build when AHA152X_DEBUG is defined patch_name: aha152x_debugon.patch patch_version: 2003-09-10.11:02:09 author: Randy.Dunlap description: enable aha152x to build when AHA152X_DEBUG is defined; product: Linux product_versions: 260-test5 maintainer: James Bottomley diffstat: = drivers/scsi/aha152x.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) [PATCH] sym53c8xx 2.1.18b This patch fixes two bugs in sym 2.1.18. - 40-bit addressing doesn't fit into 32-bits, so PciDmaMask needs to be an ULL. - Add terminating entries to pci_device_id tables. Bug spotted by Matt Domsch. [PATCH] in2000 warning Passing the address of a `long' as the `flags' parameter of check_setup_args() causes a warning. But apparently this parameter isn't used at all, so remove it. [PATCH] zalon & ncr53c8xx cleanups I don't actually have a zalon machine to test these on, but they seem right to me, and compile fine. Some cleanups for ncr53c8xx & zalon: - Inline zalon.h into zalon.c - Rationalise (a little) ncr53c8xx.c's includes - Remove all the version checks - Stop using remap_pci_mem & unmap_pci_mem & delete their definitions. - Use mb() instead of custom inline asm for MEMORY_BARRIER. PPC32: Remove trailing blanks from PPC32 files. PPC32: Two minor bootwrapper fixes on PReP, from Hollis Blanchard . PPC32: Merge MPC8260 board selection with other 'classic PPC' boards. This will make things like 'allyesconfig' and 'allmodconfig' produce a much more sane config file. It didn't really make sense to split these boards out anyhow, as they aren't 'radically different' like the 8xx boards that this distinction was styled on. PPC32: Fix the udelay implementation in the bootwrapper. It's lis rX,var@ha \n lwz rX,var@l(rX), not lis rX,var@h \n ... From Hollis Blanchard . PPC32: Make include/asm-ppc/processor.h more readable. PPC32: Fix the dependancies on CONFIG_ISA. From Hollis Blanchard . [PATCH] I2C: remove some usages of i2c_adapter.id as they are not used. Seems i2c_adapter.id is only used in some video drivers, will work on cleaning up that mess later... [NET]: Make netdevice.h more userspace friendly. [NETFILTER]: Fix typo in recent ip_input.c changes. [NET]: Better proc_net macros for non-procfs case. [IPV6]: Export devconf device settings via netlink. [SPARC64]: Make sure cpu_data[0].udelay_val gets setup on non-SMP (found by bde@nwlink.com). [NETFILTER]: Use u16 for port numbers. [CPUFREQ] CodingStyle fixes for speedstep-smi [CPUFREQ] Don't print out speedstep stuff on non-Intel CPUs. [CPUFREQ] use PFX macro in common printk's [CPUFREQ] Fix up debug printk formatting string in speedstep-smi [AGPGART] Fix silly logic bug in modular AMD64 GART driver. We found a device, and then claimed we couldn't find one due to a silly thinko. agpgart: Detected AMD 8151 AGP Bridge rev B2 agpgart: Maximum main memory to use for agp memory: 816M agpgart: AGP aperture is 64M @ 0xe0000000 No supported AGP bridge found. You can try agp_try_unsupported=1 PPC32: Fix another incorrect asm statement. From Scott Anderson . PPC32: Move all register definitions to include/asm-ppc/reg.h [XFS] remove doubly-included header files SGI Modid: 2.5.x-xfs:slinx:157933a [XFS] Implement several additional inode flags - immutable, append-only, etc; contributed by Ethan Benson. SGI Modid: 2.5.x-xfs:slinx:158362a [XFS] Re-work xfs stats macros to support per-cpu data SGI Modid: 2.5.x-xfs:slinx:156453a [XFS] Add inode64 mount option; fix case where growfs can push 32 bit inodes into 64 bit space accidentally - both changes originally from IRIX SGI Modid: 2.5.x-xfs:slinx:157935a [XFS] Separate the big filesystems macro out into separate big inums and blknos macros; fix the check for too-large filesystems in the process. SGI Modid: 2.5.x-xfs:slinx:158361a [XFS] IRIX sets KM_SLEEP to 0 but the support routines sets KM_SLEEP to 1. So somebodys shortcut on irix is incorrect on linux and results in the sleep behaviour not being set. SGI Modid: 2.5.x-xfs:slinx:157773a [XFS] Alternate, cleaner fix for the ENOSPC/ACL lookup problem SGI Modid: 2.5.x-xfs:slinx:157531a [XFS] Change dm_send_namesp_event to take vnode ptrs rather than bhv ptrs. SGI Modid: 2.5.x-xfs:slinx:157475a [XFS] Fix from Christoph gcc 3.3 complains about this and indeed it can only trigger if someone magically enlarges __uint8_t :) SGI Modid: 2.5.x-xfs:slinx:157731a [PATCH] I2C: add the i2c-sis5595 i2c bus driver This is based on the lmsensor cvs version of the driver, but is cleaned it up and ported it to 2.6. PPC32: Audit uses. [PATCH] ia64: turn off SLIT debugging This code works pretty well now, so we don't need to dump all this stuff at boot time (esp. on 128 node systems). [PATCH] ia64: protect PAL mapping printk with EFI_DEBUG Having this print out for every CPU on a large system was a pain, so protect the printk with EFI_DEBUG. ia64: Re-enable /proc/sal support. Bug reported by Stephane Eranian, patch by Jesse Barnes. [PATCH] ia64: minor perfmon2 patch This patch fixes a typo in pfm_write_pmcs() in the test for the default value. The code was using the lop index instead of the register index in the PMC_DFL_VAL() macro. This was causing valid values for some PMCs to be rejected. [UDP]: In udp_{v6_}flush_pending_frames, reset up->len too. [power] pmdisk write path cleanups. - Change partition signature to desginate pmdisk partition only (so there is no cross-confusion with swsusp). - Make fill_suspend_header() return void, since it can't fail. - Split write_suspend_image() into write_data(), write_pagedir() and write_header(). - Check errors on each, recover gracefully in each case. - Free swap entries used by data and pagedir. - Remove 4 panic()s. - Make sure pagedir is initialized to 0 when allocated. - Remove 4 useless BUG()s (that checked for constant size differences). [power] Fix platform devices. From Russell King. [power] Remove last panic() from pmdisk. [IPV4]: Convert /proc/net/pnp to seq_file. [NET]: Use proc_net_fops_create() for /proc/net/wireless [BLUETOOTH]: Add missing owner to bnep_sock_family_ops. [NET]: Increase ethernet tx_queue_len to 1000. [PATCH] I2C: add the i2c-sis630 i2c bus driver This is based on the lmsensor cvs version of the driver, but is cleaned it up and ported it to 2.6. [NET]: Make pfifo_fast actually report statistics. [ATM]: [clip] Fix race between modifying entry->vccs and clip_start_xmit(). [IPVS]: Convert to seq_file. [PATCH] I2C: add the i2c-via i2c bus driver This is based on the lmsensor cvs version of the driver, but is cleaned it up and ported it to 2.6. [PATCH] I2C: clean up the i2c bus Kconfig menu and help texts. [PATCH] I2C: turn off debugging on the new sis i2c bus drivers. Forgot to do this before... [PATCH] I2C: New PPC4xx I2C driver This updates the current 2.6 PPC 4xx driver to the rewritten version we have in the PPC development tree. It is cleaner, has less bugs, and has more features. [PATCH] I2C: drivers/i2c version.h cleanup remove unnecessary version.h from drivers/i2c. test compiled with 2.6.0-test5-bk2 on x86. [AGPGART] Missing prefixes in printk's o LLC: introduce llc_type_handlers This is the start of the split of LLC into a core part and the bigger, not needed by ipx, token ring, appletalk, etc, LLC2 stack. o LLC: move llc_decode_pdu_type to llc_mac And also rename it to llc_pdu_type and make it return the type, this is to make llc_mac more and more autonomous of the rest of the llc code, to the point where it will be a separate loadable module. o LLC: move llc_conn_handler and llc_sap_handler out of llc_mac o LLC: remove another silly net 4.0 banner Also add a prototype for llc_conn_rcv, that will move away in the next changesets. but for now is needed to kill a warning. [NET]: Tiny af_packet.c cleanup. JFS: Fix rampant data corruption A recent change causes pervasive data corruption by over-writing inode metadata with a word of garbage. The field, di_rdev, should only be set for a device inode. [ARM] Remove compiler warning in sa1111-pcipool.c o LLC: move the connection related functions to llc_conn [XFS] Automatically set logbsize for larger stripe units SGI Modid: 2.5.x-xfs:slinx:157534a [power] Clean up snapshot path in pmdisk - Split count_and_copy_pages() into count_pages() and copy_pages(), which each use helper saveable() to determine whether we should save a page. - Split allocation and freeing of page directory and snapshot pages into separate functions. Make sure we fail gracefully and cleanup if something goes wrong. - Report error back from pmdisk_suspend(). - Remove parameters from pagedir functions, since we're using globals anyway. - Minor cleanups in pmdisk_suspend(). o LLC: move sap functions to llc_sap o LLC: move the sockets release function outside of llc_sap_close [PATCH] USB: fix oops when trying to suspend and resume. Thanks to Pavel for the original version of this patch. [PATCH] USB: fix oops in ipaq driver Should fix bug number 1227 o LLC: move llc_build_and_send_ui_pkt to llc_sap [PATCH] USB speedtouch: use multiple urbs by default [PATCH] USB: New email address for duncan [PATCH] USB speedtouch: neater sanity check Biscuit for Greg. [PATCH] USB speedtouch: bump the version number [PATCH] USB: Drop debounce printout for 2.6 This seems to work well enough, we do not need the printout anymore. [PATCH] USB: usb/gadget/Kconfig, use right PXA2xx symbols I just noticed that Linus' tree is using the wrong CONFIG_* symbols for kicking in the PXA 2xx support (except for "gadgetfs"). It should use USB_PXA2XX not USB_PXA250, since it handles PXA 255, PXA 210, PXA 263, and others. o LLC: move llc_lookup_dgram to llc_sap Also move llc_save_primitive to llc_sap, almost untangling the LLC2 stack from the core. [PATCH] USB: make pdfdocs problem The `make pdfdocs' target still fails for me on the `writing_usb_drivers' document. There's one small bug in it, and one problem I haven't figured out yet. There is a malformed blah sequence, where the closing tag is instead an opening tag. Patch for that below. [PATCH] USB: fix up missing in usb documentation. This fixes build problem. [ARM] Update ARM CPU support. Move ARM CPU configuration to arch/arm/mm. Seperate out the selection of the abort, cache handling, optimised page copying and TLB handling from the Makefile, and move it into the configuration system. This allows us to select the correct files in arch/arm/mm and pick the appropriate definitions in include/asm-arm/* based upon a config symbol rather than a bunch of configuration symbols. Also add ARM1020E, ARM1022 and ARM1026 CPU support. o LLC: move the pdu routines needed by the upcoming llc_core to llc_pdu.h Making them inline, as they are small enough and some very seldomly used. [PATCH] USB: Use num_altsetting in usbnet and usbtest This patch fixes usbnet and usbtest. When checking endpoints, they iterate through all interfaces out to intf->max_altsetting, but they should only go up to intf->num_altsetting. The max_altsetting value refers to the amount of space _allocated_ for usb_host_interface structures, not the number that are really in use. [ARM] Detect and fix up CPUs with non-coherent write buffers. Jamie Lokier's cache testing program discovered a problem which seems to be present in some CPU write buffers. This cset allows the kernel to detect the flaw and activate a workaround to restore the user space expectations. [ARM] Provide __HAVE_ARCH_BCOPY This squashes another compiler warning. [ARM] Add newly discovered CR register function. [ARM] Fix gcc3 multi-line string literal build error. [ARM] Remove CONFIG_KBDMOUSE from arch/arm/Kconfig [ARM] Kill gcc preprocessor warning. [ARM] Fix name of "cache format" cpuinfo description. [PATCH] Coda updates [1/5] - Remove unused functions and variables. - Be a bit more strict with the definition of various types that are shared between kernel and userspace. - Included a couple of cleanups from Maximilian Attems and Stephen Hemminger. [PATCH] Coda updates [2/5] Use a global 'epoch' counter to invalidate cached permissions instead of traversing a racy linked list of all known Coda inodes. [PATCH] Coda updates [3/5] Both userspace and the kernel are testing only the fsuid part of the coda_creds credentials structure. Nothing else is really used, so we now match the code with the actual usage by only passing fsuid around. The kernel-userspace API is kept compatible (for now). [PATCH] Coda updates [4/5] The ViceFid structure is really a Coda server datatype and the kernel really shouldn't have to know its internal structure. Replace all instances with struct CodaFid with opaque members. [PATCH] Coda updates [5/5] Introduce a new kernel-userspace interface that uses 128-bit file identifiers instead of the previously used 96-bit fileids. We also replacing the coda_creds structure with only the fsuid. This new API has been used by for a couple of months now, people had to patch their kernels whenever they want to run a current Coda release. A new Kconfig option is added to fall back on the old API for older Coda clients and other userspace filesystems that might use our protocol. [power] Clean up pmdisk page freeing - Fix small buglet when freeing image pages on resume where we were only freeing the first (1 << pagedir_order) (e.g. 16) pages, instead of all of them. - Make sure we save the page directory, which requires an update of the total number of pages to save, and requires that we don't mark those pages as unsaveable. - Restore __GFP_COLD flag to allocations. [AGPGART] Fix missing/bogus includes. [CPUFREQ] Add missing config.h includes [PATCH] use seq_lock for monotonic time Monotonic clock code uses reader/writer lock which is prone to same starvation problems as we saw with xtime. This patch changes it to seq_lock which is faster and won't starve writers in face of lots of readers. o LLC: implement llc_add_pack/llc_remove_pack o LLC: split llc into llc_core and llc2 modules For this some more functions had to be moved around, now one doesn't have to explicitely select LLC to have access in the menu to ipx, appletalk, token ring, etc. This is not yet as good as I want it to be, but at least makes it easier for the hordes of users to select stuff, making it look more like how it was in 2.4. In the next changesets I'll fix the fact that CONFIG_TR is a bool and makes psnap, p8022 and llc_core to be built statically even tho the token ring drivers are being build as modules. [ARM] Provide bus type and support for logic modules. The IMPD-1 is a logic module (a stackable module) - rather than trying to abuse platform devices, create our own bus type to handle these. [ARM] Clean up PCI error reporting. Don't try to clear PCI status on devices which are no longer present. Only clear PCI status bits which we're interested in. Use pci_name to report the device name. [XFS] Some tweaks to the additional inode flags, suggested by Ethan Benson SGI Modid: 2.5.x-xfs:slinx:158493a [ARM] Dynamically allocate SA1111 component devices. [ARM] Update machine types list. [ARM] Ensure that MM initialisation warnings are reported as bugs. PPC32: Fix a rounding error in the bootwrapper udelay. From Milton Miller. [XFS] fix build for gcc 3.2 SGI Modid: 2.5.x-xfs:slinx:158511a [PCMCIA] Fix bug in PCMCIA resource management memory probing This prevents us from probing past the memory areas which cardmgr passes us, and also allows us to correctly remove areas which we decide are not available for PCMCIA use. PPC32: Re-arrange arch/ppc/Kconfig, from Hollis Blanchard PPC32: Make the IBM 4xx options menu depend on 4xx, from Hollis Blanchard PPC32: Make CONFIG_DEBUG_INFO default to n, always. [AGPGART] Add HP AGP 8x bridge and fix ACPI claim The following patch to the HP ZX1 GART driver - adds recognition of the "HWP0007" device (an AGP 8X bridge) - fixes the use of acpi_get_devices() The problem with acpi_get_devices() is that it always returns AE_OK, except when the callback (zx1_gart_probe()) returns a failure. That means agp_hp_init() cannot use the status from acpi_get_devices() to distinguish between (1) an AGP bridge was found and successfully initialized, and (2) no AGP bridge was found at all. [PATCH] USB: Remove modules.txt: usb_media, usb_input [PATCH] USB: Remove modules.txt: usb serial & storage Support for POWER4 & GPUL (G5) CPUs [PATCH] update credits Update CREDITS with new contact info. [PATCH] Add LSM maintainer entry Add LSM maintainer entry [PATCH] LSM comment fixup From: John Levon LSM: Update comments in register_security to reflect reality [PATCH] root_plug fixup From: bert hubert LSM: To recap, this patch allows root_plug to work again. It needs functions that used to reside in capability.c but linking in capability.c, disabled root_plug from loading, as a security module is already present then. This patch splits out the functions root_plug needs from capability.c. [PATCH] AS documentation The as-iosched.c source code has said this is here for a long time but it kept getting lost. [PATCH] smbfs module unload and highuid I haven't been doing much smbfs work recently, but here are some bugfixes: - Fix module unload (Angus Sawyer). - Fix the smbfs error handling if kernel_thread() should fail. - Allow high uids/gids to be used as the fake uid smbfs sets as file owner. [PATCH] ide-cd capacity "bug" From Daniel Pittman Using the lra (last recorded address) isn't always reliable on some drives, so use the regular TOC if it returns 0 capacity. [PATCH] shared block queue tag map This implements the possibility for sharing a tag map between queues. Some (most?) scsi host adapters needs this, and SATA tcq will need it for some cases, too. [PATCH] WM9712 suspend/resume nopop From: Liam Girdwood This patch eliminates pop noises when doing a PM suspend/resume with the WM9712 AC97 codec. [PATCH] Make /proc/kcore configurable This allows /proc/kcore to be entirely disabled and dropped out of the kernel - we already select between a.out and ELF. Right now it only drops /proc/kcore out of the kernel for ARM. [PATCH] ACPI maintainer change This updates the maintainer entry for ACPI. Len has already assumed most of this responsibility, as other projects demand my attention. My team will continue to maintain the OS-independent ACPI CA release, but Len will be responsible for pulling ACPI CA updates into the Linux release, and the rest of Linux-specific code in general. o LLC: add some unlikely wrappings in llc_mac Also rename fix_up_incoming_skb to llc_fixup_skb, to be more namespace friendly. Ah, make it inline too. [PATCH] drivers/char/misc -- use list() macros Use list macros for misc_device list. [PATCH] drivers/char/misc -- seq_file Use seq_file for /proc/misc [PATCH] USB: Debug code fixes for vicam When compiling vicam with debug info, a compile error occurs. I presume this is because this part of the code has not been updated since the 2.4 kernels. This patch fixes this. [PATCH] USB: Debug code fixes for usblp When compiling usblp with debug info, a compile error occurs. I presume this is because this part of the code has not been updated since the 2.4 kernels. This patch fixes this. I also enhanced the debug output a little, as suggested by Randy Dunlap. [PATCH] [PATCH] drivers/usb version/include cleanup Remove unneeded version.h and doubley included header. Test compiled on 2.6.0-test5-bk3. [PATCH] USB: Changes to core/config.c (1 of 9) This first patch makes only trivial changes. Excess whitespace at the end of lines is removed and return codes are altered from -1 to symbolic error values. The only significant difference is that in one spot a valid return is changed to an error return, when a descriptor does not have the correct type. - Remove excess whitespace at the ends of lines. - Change return codes to symbolic values. - Return an error when an invalid endpoint descriptor is found. [power] Clean up pmdisk image reading code. - Split read_suspend_image() into: - check_sig() - check_header() - read_pagedir() - read_image_data() - Use specific data type and casts when possible, no more masking everything via a 'union diskpage' - Remove two BUG()s; replace with error handling. [PATCH] USB: make sure we never reference a usbserial port after it has been unregistered. [PATCH] USB: Debug code fixes for dabusb [PATCH] USB: psdocs fails for usbgadget It updates the "gadget" kerneldoc, removing some (new) warnings, and showing some fields it hadn't previously been showing (due to limitations in docproc). Plus it adds a bit of information about recent changes (new drivers). [PATCH] USB: Changes to core/config.c (2 of 9) This patch fixes the most blatant problems that can happen when an error is encountered during descriptor parsing. The struct device embedded within a struct usb_interface is initialized as soon as the structure is allocated, so that when put_device() is called it will contain valid data. put_device() is not called for unallocated interfaces. The pointers in config->extra are freed when the struct usb_host_config is freed. rawdescriptor pointers are initialized to 0 so that they can be freed without error. Partially parsed configurations are remembered so that they will be deallocated when the entire struct usb_device is freed. [PATCH] USB: Changes to core/config.c (3 of 9) This patch includes a bunch of little local improvements to the code, listed in the patch comments. There are only two notable changes. If a device has more configurations than our maximum, the code doesn't reject the device but simply parses as many configurations as it can and ignores the rest. Likewise, if a configuration contains too many interfaces, the code parses as many as it can and skips the excess. That way such devices will be at least partially useable. Since these limits are arbitrary and set by the implementation (not part of the USB spec), it doesn't make sense to reject a device that violates them. Numerous local programming improvements: Don't initialize to 0 fields in structures that have been memset to 0. Don't constantly keep track of how many bytes are parsed. Use local variables to hold unwieldy values. Remove redundant tests. Allow devices to have more configurations or interfaces than we can handle. [PATCH] USB: Changes to core/config.c (4 of 9) Although it's hard to tell from reading the patch, this just moves one section of code to a slightly different spot. Currently the code that skips over the extra class- and vendor-specific configuration-related descriptors is part of the loop that parses interface descriptors. The patch moves it outside, immediately before that loop -- where it belongs. [PATCH] USB: Changes to core/config.c (5 of 9) This patch centralizes the error checking for invalid descriptor lengths and unexpected descriptor types. Instead of doing it in three different places -- while parsing configuration, interface, and endpoint descriptors -- the new code does it all at once. Not surprisingly, this yields a net savings in code size. [PATCH] USB: Changes to core/config.c (6 of 9) This patch removes the home-brewed resizeable arrays used to store altsetting structures, along with the now-unneeded max_altsetting field. Since we are already making a preliminary pass through all the descriptors to check their lengths, we take the opportunity to also count the number of altsetting descriptors for each interface. Then exactly the right number can be allocated all at once. This also moves the code that allocates the altsettings outside the usb_parse_interface() routine. Though not important now, this change will come in handy in the next patch. [AGPGART] Fix module alias. From OGAWA Hirofumi ia64: In , do not include outside the #ifdef __KERNEL__ bracket. Doing so pollutes the user- level namespace. Bug report & proposed fix by GOTO Masanori. o LLC: create llc_output and move lan_hdrs_init to it Renaming lan_hdrs_init to llc_mac_hdr_init and making all places check if it fails. [CPUFREQ] Read MSRs before trying to use them in powernow-k7 Very silly bug spotted by Ducrot Bruno [power] Get rid of unneeded variables. ia64: Control /proc/bus/mckinley/zx1 via separate SBA_PROC_FS macro and turn SBA_PROC_FS off by default (it's too much of a scalability bottleneck). [PATCH] ia64: small sn2 cleanup Attached is a small cleanup patch for the sn2 header files which removes some cases of excessive header file inclusion. [PATCH] ia64: pass si_isr for a few more signal sources This patch changes the kernel such that si_isr gets setup for hardware breakpoints, single-step, and taken-branch traps. This is useful, e.g., to determine what kind of hw breakpoint triggered the signal. [PATCH] ia64: sn2 header file cleanup This patch removes a ton of pointless big endian defines for some registers on SN2 and cleans up the #include hierachy making it include some really big header files only when they are really needed. [PATCH] ia64: include/asm-ia64/sn/router.h cleanup Minor cleanup. [PATCH] ia64: fix for include/asm-ia64/acpi.h asm/acpi.h relies on struct pci_vector_struct which is defined in asm/system.h. [PATCH] ia64: trivial sba_iommu patch I'm aligning the 2.4 and 2.5 versions of arch/ia64/hp/common/sba_iommu.c and found a couple nits in the 2.5 version. No functional change, just whitespace, comment, and parameter name changes (and I made one function static). [CPUFREQ] We need to set SGTC when we change powernow-k7 voltage. [CPUFREQ] Work around buggy powernow-k7 BIOSes with low settling times. [CPUFREQ] Powernow-k7 latency timer needs to be in values of 10ns. We were 'slightly' off in our calculations. This increased settling time might actually increase the stability of some setups. [CPUFREQ] Explicitly disable scaling we don't need in powernow-k7 The VIDC/FIDC controls could have been left at 1 from a previous call to one of the scaling routines. Make sure we set them back to 0 to avoid writing garbage into the scaling registers. [power] Optimize pmdisk assembly. - No need to save %ebx, since we replace it with saved version after we restore image. - No need to use long long for the loop counters, since they can't conceivably exeed 32 bits. We can then fit them in general registers, and don't actually have to write them back after each iteration. - Use rep ; movsl to copy each page, instead of copying a byte at a time. This actually makes a noticable improvment when restoring the saved image. This also relieves register pressure by using %esi and %edi, which allows us to kill the loop variables altogether. - Call {save,restore}_processor_state() from the pmdisk C functions. We need to make sure all the counters are set appropriately before and after each path, and we don't _have_ to call them from assembly. [PATCH] USB: unusual device fixup for the Y-E floppy drive. [PATCH] USB: Changes to core/config.c (7 of 9) This patch changes the usb_parse_interface() routine so that it only handles a single interface/altsetting descriptor at a time, rather than trying to handle all the altsettings for an interface at once. Besides shrinking the code slightly, this has the advantage of not requiring the interfaces to be listed in order or all the altsetting descriptors for an interface to be contiguous. While there probably aren't any devices that have _discontiguous_ altsetting descriptors, there's no harm in allowing it -- particularly since doing so provides an overall simplification. This is another of those hard-to-read patches. It moves most of the body of the usb_parse_interface() function out of a loop, thereby changing the indentation level without actually altering the code. [PATCH] USB: Changes to core/config.c (8 of 9) This patch adds some extra error checking. The patch-comments list most it. Particularly worth noting is the check on the endpoint addresses. Since these addresses are used as indexes for the epmaxpacketin and epmaxpacketout arrays, illegal values could result in overwriting unrelated areas of memory. Other noteworthy checks involve interface and alsetting numbers. Since the old code ignored those values, of course it didn't bother to check them. Here we make sure that the numbers lie in the proper ranges and that there are no "missing" entries. Add error checking and improved error messages: Check for invalid endpoint descriptors and invalid endpoint addresses. Check for duplicate interface/altsetting descriptors. Check for invalid configuration descriptors. Check for missing interface/altsetting descriptors. [PATCH] USB: Changes to core/config.c (9 of 9) This patch implements the change discussed last weekend. Rather than allocating separate memory areas for the "extra" descriptors and copying the descriptor contents, it simply makes the "extra" pointers refer to memory within the rawdescriptor arrays. o LLC: create a register interface for llc_station_rcv [PATCH] io scheduler barrier fix From: Nick Piggin This should be the last piece to ensure correct barrier handling for AS and DL? [PATCH] fix keycode for rctrl in scancode set 3 By mistake the keycode for right control in scancode set 3 was the same as that for right alt. This fixes that. [XFS] Fix initialization of inode flags from xfs inode fields. synaptics.c, psmouse-base.c: input: Restore synaptics pad mode on module unload. input.c: input: Don't set autorepeat times in core if already set by driver. atkbd.c: input: Automatic forced release of keys if keyrelease gets lost db9.c: input: Fix Sega Saturn pad support. Input: Big Synaptics update: Restore synaptics pad mode on module unload. Support Synaptics touchpads with multiple buttons. Make Synaptics touchpad support optional. Add passthrough support for Synaptics touchpads. [Dmitry] Add support for old Synaptics protocol. Set mode byte correctly for old Synaptics pads. Fix multibutton support of Synaptics pads. psmouse-base.c: Fix resume of PS/2 mouse. Uses old PM interface at the moment. psmouse-base.c: Change the name od the Synaptics protocol to SynPS/2 psmouse-base.c: Make sure psmouse->pktcnt is zero after passing a byte to be processed by synaptics code. input.h, keyboard.c, evdev.c: Fix the INPUT_KEYCODE macro and its usage. psmouse-base.c: Enlarge the timeout for PS/2 mouse full reset. iforce-usb.c, iforce-packets.c: Fix I-Force sleeping issues. serio.c: claim serio early in serio_open() [ARM] Massive rename of default configuration files. This renames all 48 (800K-ish of) ARM default configuration files, as required by Sam's latest default configuration file system. [ARM] Remove private %_config makefile rule [ARM] Correct comments for abort handler parameters. input: Fix Set3 keycode for right control in atkbd.c input: Fix a warning in input.c when CONFIG_PROC_FS is not set. input: Remove a not necessary #ifdef CONFIG_PROC_FS/#endif in input.c input: Fix memory leak in hiddev.c found by Stanford Checker. input: Fix Kconfig KEYBOARD_ATKBD when SERIO is modular. [XFS] Fix some compile warnings and errors from some long-forgotten 2.4 mods SGI Modid: 2.5.x-xfs:slinx:158642a [ARM] Fix abort handler typo affecting Xscale CPUs. [ARM] Place initial data/code in assembly into the correct section We were mixing some data and code in the processor support assembly files. Place the correct objects into their respective sections. [ARM] Optimise io-readsb for CPUs with delay slots after ldr. [ARM PATCH] 1528/1: big endian support for io-readsb/io-writesb Patch from Nicolas Pitre [ARM] Optimise io-writesl for cpus with ldr result delays. [ARM] Fix AMBA keyboard/mouse driver. Fix the AMBA kmi driver which got broken when the name field was removed from struct device. Change the name used to claim resources to "kmi-pl050". Fix resume method. [ARM] Update mach-types with latest version. [ARM] Update bootp kernel+initrd loader. Drop support for old param struct method, and clean up code. o LLC: rename llc_mac.c to llc_input.c, net/llc_mac.h to net/llc.h Next step: to have llc_build_and_send_ui_pkt in llc_output.c, not using the silly sap state machinery. [power] Cleanup pdmisk header. - Create struct pmdisk_header, which can overlay a union suspend_header, but keeps the swap entry of the suspend header just before the signature (so we can use the full 10 bytes for a signature and don't have to worry about getting too cramped in there). - We also keep a field for the orignal signature. We don't need to change our signature based on what version of swap we're using, we just need to make sure that we reset it correctly. - Get rid of union diskpage::swh, and all ugly casts to get the swap entry for the header. [XFS] Make xfs_ichgtime call mark_inode_dirty_sync instead of mark_inode_dirty makes the just the inode look dirty, and not the inode and the data. SGI Modid: 2.5.x-xfs:slinx:158670a [power] Cleanup pmdisk header info. - Create struct pmdisk_info to hold image metadata (instead of struct suspend_header). - Put swp_entry_t to hold the beginning of the page directory, so we don't have to reserve the last 4/8 bytes at the end of a page for it. - Get rid of union diskpage::sh and all casts to get at it. [power] Clean up pmdisk pagedir "linking". - Remove union diskpage, and replace all casts with explicit casts to 'struct link *' [XFS] Update sysctls - use ints, not ulongs, and show pagebuf values in jiffies like everybody else SGI Modid: 2.5.x-xfs:slinx:158665a [PATCH] Fix a warning in input.c when CONFIG_PROC_FS is not set [PATCH] Remove a not necessary #ifdef CONFIG_PROC_FS/#endif in input.c [PATCH] Fix memory leak in hiddev.c found by Stanford Checker Added "user64" versions of the user access functions that allow modification of 64-bit data. [PATCH] USB: ethtool_ops and ax8817x fixes for usbnet This is a resend of all of my recent usbnet additions which center on adding ethtool_ops support. All have been re-diffed against the latest usbnet from BK. Changes: * Add ethtool_ops support to usbnet * Add GPIO bit toggling upon initialization of ax8817x devices so that xmit works properly * Add Wake-On-Lan and eeprom dump support for ax8817x devices (this only adds the config support for WOL, actual operation is more of a USB/Power Management function) * Change ax8817x_set_multicast to not kmalloc for the filter since there was no clean way to free the memory after URB submit. Instead, we make use of the 20 byte dev->data. o LLC: trim down llc_core to the very basic support needed by IPX et all Renaming the basic support module to llc.ko and introducing llc_core.c, that has just the basic output path for llc_build_and_send_ui_pkt. Next step will be to rename llc_main.c to llc_station.c, then consolidate all the llc station code in this file, removing all the not needed llc_station parameters and killing struct llc_station altogether, no sense in having it as there is just one station, always. BTW in this changeset parts of llc_main_station was already moved to llc_core.c, namely the sap list and lock. o LLC: rename llc_main.[ch] to llc_station.[ch] First step at coalescing the station handling into just one file, killing some useless headers in the process. o LLC: reorganize llc_station.c to kill useless static prototypes o LLC: consolidate the LLC station component into llc_station.c Deleting llc_actn.[ch], llc_evnt.[ch] & llc_stat.[ch], now it is clearly separated from the rest and lots of previously externally visible thru headers stuff is nicely restrained in this file. Also remove the silly passing around of pointers to llc_main_station, use it directly. o LLC: llc_station.h is not useful anymore, kill it Some defines had no place in this header, moved to llc_conn.h, the struct llc_station, that probably will disappear in the near future, is used only in llc_station.c, so remove one more file from the include forest. [IPV4]: In tcp_diag.c, use static, const, and void *, as appropriate. [WAN]: Remove multi-line string literal. [WAN]: Convert taskqueues to workqueues. [NET]: SEQ_START_TOKEN for af_netlink.c [IRDA]: Eliminate skb_linearize() from irda. [IPV4]: Use cpu_relax() in ipconfig.c [IRDA]: proc/net/irda files using seq_file [IRDA]: Convert ircomm to seq_file [WAN]: Use module_exit() in sdladrv. [NET]: More const in skbuff.h [NET]: Remove unneeded includes (tokenring). [SPARC]: One more multi-line string, from Rob Radez. [SPARC]: Down with P3's in srmmu.c [NET]: Remove unneeded includes (skfp). [NET]: Remove unneeded includes (sk98lin). [NET]: Remove unneeded includes (wan, from Randy Hron). [NET]: Remove unneeded includes (hamradio, from Randy Hron). [NET]: Remove unneeded includes (wireless, from Randy Hron). [NET]: Remove unneeded includes (wanrouter, from Randy Hron). [SPARC]: Remove unneeded includes (from Randy Hron). [IPV4]: Fix skb leak in igmp.c [IPVS]: Get rid of register declarations. [IPVS]: Get rid of SEQ_START_TOKEN define. [IPVS]: Use list_for_each_entry macro. [IPVS]: Use time_before/after. [NET]: Deprecate dev_get(). [NET]: Fix bug in dev_get() deprecation patch. [ARM] Fix up includes Remove duplicate includes, ensure that linux/config.h is included where necessary, and linux/config.h isn't included where it isn't needed. kbuild: Escape "'" in cmd macro Building drivers/eisa were broken in non-verbose mode. This has been fixed by escaping "'" for cmd. It was used in $(call cmd,eisaid). Escaping "'" is already done by if_changed, so this brings cmd in line with if_changed [PATCH] depca update I finally found some time to hack the depca driver, in basically the same way I did with the de4x5 driver. The patch is quite big (shuffles a lot of code around, removes lots of global variables), mainly in order to use the driver model on every bus supported by this driver. I also removed the probing from Space.c, so the usual warning about device renumbering applies. Tested on alpha (DE422, EISA) and i386 (two DE201, ISA), built-in and modular. The MCA part is completly untested, since I lack the hardware (no, I do not own every single piece of junk hardware out there... ;-). [PATCH] Unneeded memory barrier in net/irda code [PATCH] replace sppp_of macro with inline Replace macro with inline and get some type checking. [PATCH] janitor: remove unneeded includes (tokenring) From: Randy Hron [PATCH] janitor: remove unneeded includes (sk98lin) From: Randy Hron [PATCH] janitor: remove (or add) unneeded includes From: Randy Hron [PATCH] janitor: remove unneeded includes (skfp) From: Randy Hron [PATCH] janitor: remove (or add) unneeded includes (wireless) From: Randy Hron [PATCH] janitor: remove unneeded includes (hamradio) From: Randy Hron [PATCH] janitor: remove (or add) unneeded includes (drivers/net/) From: Randy Hron [netdrvr] use cpu_relax() in busy loop, or mdelay instead of busy loop Replace busy loop nop with cpu_relax(), and just use mdelay where it's better. [PATCH] get rid of old IRDA drivers. According to Jean the toshoboe and old smc ircc drivers are no longer needed. This patch removes them from 2.6.0-test5 [PATCH] janitor: insert a missing iounmap() From: Leann Ogasawara Subject: [Kernel-janitors] [PATCH] insert missing iounmap() Patch inserts a missing iounmap(). [PATCH] janitor: ns83820 error handling Subject: Re: [Kernel-janitors] [PATCH] insert missing free_irq and fix cleanup path From: Leann Ogasawara On Thu, 2003-09-04 at 13:17, Benjamin LaHaise wrote: > The if()s before free are redundant, turf them and it's good. [IrDA] irda-usb -- dev_alloc cleanout Update irda-usb for 2.6.0-test5 - use alloc_netdev (but can't use dev->priv area cause that is allocated elsewhere). [IrDA] w83977af -- dev_alloc cleanout Yet another irda driver cleanup for 2.6.0-test5 - replace dev_alloc with alloc_netdev - use private data allocated with alloc_netdev - use free_netdev [IrDA] donahoboe -- dev_alloc cleanout Fixes for donauboe for 2.6.0-test5 - replace dev_alloc with alloc_netdev - error unwind cleanup [IrDA] nsc-ircc -- dev_alloc cleanout Cleanup nsc-ircc driver for 2.6.0-test5 - replace dev_alloc with alloc_netdev - use private data allocated with alloc_netdev - error unwind cleanup [IrDA] via-ircc -- dev_alloc cleanout Convert via-ircc 2.6.0-test5 - use alloc_net_dev not dev_alloc - allocate private data at same time - cleanup error unwinds - call free_netdev. Builds and loads, but don't have real hardware. [IrDA] ali-ircc -- dev_alloc cleanout Convert ali-ircc driver to: - use alloc_net_dev not dev_alloc - allocate private data at same time - cleanup error unwinds - call free_netdev. Builds and loads, but don't have real hardware. [PATCH] sealevel wan driver Update sealevel driver to match current net_device interface: - dynamically allocate netdevice and private data. - get rid of MOD_INC/DEC - if_ptr not used - bugfix: not all of board structure was being zeroed. Note: this driver still doesn't probe() correctly since it just assumes that if loaded the hardware is there! Since I don't have one of these boards... tested it by #ifdef'ing out all the bits that touch actual hardware. [PATCH] update arcnet/pcmcia driver Redo of earlier patch to get rid of MOD_INC/DEC and use alloc_netdev. This is against 2.6.0-test5 bk latest. [PATCH] [bonding 2.6] consolidate change_active operations [PATCH] [bonding 2.6] fix assign_current_slave [PATCH] [bonding 2.6] Decouple promiscuous handling from multicast mode setting [PATCH] [bonding 2.6] Add support for changing HW address and MTU [PATCH] [bonding 2.6] Add support for changing HW address in ALB/TLB modes [PATCH] [bonding 2.6] Consolidate /proc code, add CHANGENAME handler [PATCH] [bonding 2.6] Enhance netdev notification handling [PATCH] [bonding 2.6] Add missing free_netdev() [PATCH] [bonding 2.6] Fix ipx_hdr compile error [PATCH] e1000 bug Rick Lindsley wrote: > > since it's been out for a while you probably already know, but the patch > for e1000_main.c has a bug in it. Looks like it will fail at line 1550 if > compiled with NETIF_F_TSO defined. > So it will. I blame the gcc developers. 25-akpm/drivers/net/e1000/e1000_main.c | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-) [PATCH] fix sbni.c compile with gcc 3.3 sbni.c in 2.6.0-test5 fails to compile with gcc 3.3 with the following error: <-- snip --> ... CC drivers/net/wan/sbni.o ... drivers/net/wan/sbni.c: In function `calc_crc32': drivers/net/wan/sbni.c:1568: error: asm-specifier for variable `_crc' conflicts with asm clobber list make[3]: *** [drivers/net/wan/sbni.o] Error 1 <-- snip --> Below is the patch by Margit Schubert-White to fix this issue (it is already in 2.4). cu Adrian [PATCH] [bonding] Convert /proc to seq_file This patch converts /proc/net/bondX/info into /proc/net/bonding/bondX using the seq_file interface. This is based on Stephen's recent patch, but slightly modified to work with the propagation patch set and with some locking changes to make it simpler. The patch applies both on 2.4 (after the sync set from earlier today) and on 2.6 (after the propagation set from 2003/11/9). Amir kbuild/rpm: Fix 'make rpm' and enable use of 'make O=dir rpm' Simplify 'make rpm' a bit, and enable use of rpm in combination with separate output directory. Also added kernel.spec to ignore list [PATCH] hamradio/scc - Update hamradio/scc for 2.6.0-test5 - use seq_file for /proc - get rid of dev_get() - use alloc_netdev Don't have hardware, but can load/unload the module fine. [tokenring] fix breakage in proteon, skisa this one fixes both drivers. They have been broken since the reorganization in June. Unfortunately, my major build platform (alpha) had some issues with later 2.5.X kernels (cache problems causing all kind of funny behaviour), so i waited until these problems had been resolved by the alpha gurus :-/... In the mean time i also upgraded pine. I hope the patch corruption issue is resolved by now. o LLC: use list_for_each_entry in llc_sap_find [wireless airo] fix PCI probe [wireless airo] Fix MIC support with CryptoAPI [PATCH] Road Runner HIPPI driver (rrunner) Small clean up, to use current APIs. kbuild: modpost, corrected check of mmap() From: Kristian Høgsberg Corrected typo in modpost.c. Check the pointer returned, not the pointer to the mmap funtion Avoid type warning for bit operation in atkbd.c [sound/oss i810_audio] sync with 2.4 * increase length of wait for analog-ready * fix printk prefix (cosmetic) * bail out for pure MMIO interfaces, instead of attempting to use it via PIO and hanging the system. [docbook] fix embedded filename in kernel-api docbook doc [docbook] fix docbook build, by closing several unclosed tags [BK] "bk ignore" a ton of docbook-generated output [BK] "bk ignore" generated files that appeared during "make allyesconfig" Don't ask about SERIO selection - let Kconfig select it automatically as needed. [ARM] Avoid using clone syscall from kernel_thread() Don't issue a system call from kernel_thread(), but call do_fork() directly. This avoids all the unnecessary syscall overhead. Fix cputable.c build (missing commas) [PATCH] Move EISA_bus When I change the setting of CONFIG_EISA, everything rebuilds. This is because EISA_bus is declared in which is implicitly included by just about everything. This is a silly place to declare it, so this patch moves it to include/linux/eisa.h. While I'm at it, I also move the variable definition to drivers/eisa/eisa-bus.c. The rest of this patch is fixing up the fallout from having to include if you use EISA_bus. Disable forced keyrelease in atkbd driver. It breaks modifier keys. [PATCH] fix for hidden-task problem It's bad to make (CLONE_THREAD | CLONE_DETACHED) tasks be _completely_ hidden. Resource consumption is hard to track down if a user can hide a task from /bin/ps. This patch, supported by the procps-3.1.13 release, gives admins the ability to search for such tasks. The top-level /proc directory remains uncontaminated. [PNPBIOS] compilation fix for pnpbios without proc support Here's an updated patch that will correct the compile error when PROC FS is disabled. It also introduces better proc error recovery and moves the local proc functions to the local include file. Thanks to Daniele Bellucci for finding the problem and contributing to this patch. [PNP] release card devices on probe failure When a driver's probe routine fails, it may not release all of the card devices it requested. This patch allows the pnp layer to ensure that all devices claimed by the failing driver are released properly. [PNPBIOS] move detection code into core.c This patch moves the detection code to a more appropriate file. [PNP] remove DMA 0 restrictions The original argument for blocking DMA 0 was to avoid conflicts with "memory refresh" but such configurations are only found on very old 8-bit systems that are likely not supported by the linux kernel. This patch allows dma 0 to be assigned to PnP devices by default. If for whatever reason dma 0 cannot be used, one can avoid allocating it by setting the pnp_reserve_dma= kernel parameter. [PATCH] janitor: remove unneeded includes (isapnp) From: Randy Hron [ISAPNP] remove unused isapnp_allow_dma0 modparam It looks like this option has been moved from isapnp to resource.c, but the MODULE_PARM line is still there: patch from: Gerald Teschl [PNPBIOS] return proper error codes on init failure [PNPBIOS] move some more functions to local include file This patch moves some unnecessary global functions to the local pnpbios include file. [PCMCIA] Fix deadlocks caused between PCMCIA card fix and device model The problem was that the semaphore which prevents ds interfering with the sleepy card initialisation (skt_sem in pccardd) is blocking insmod of the socket driver. However, the socket driver is being called with the PCI bus semaphore held by the driver model. pccardd in turn discovered a cardbus card (with skt_sem held), so it is trying to add the PCI devices to the PCI bus, and this requires the driver model to grab the PCI bus semaphore, but its already locked. We move the class device register into pccardd so we get a natural ordering between the ds socket initialisation and pccardd trying to detect inserted cards. We also fix a potential use-after-free caused by rmmod'ing the socket driver before ds has shut down. [PATCH] procfs build fix for older gcc - declarations come first - fix bizarre coding style. [PATCH] ECC support From: "Nakajima, Jun" Split the increasingly messy compiler.h file into per-compiler files and also add support for