19 kwietnia (tuż przed świętami), Linus Torvalds poinformował na kml o wydaniu kolejnej rozwojowej wersji kernela. Tym razem nosi ona numer 2.5.68. Choć 2.5.67 chodzi bardzo stabilnie, nowa wersja wprowadza olbrzymią ilość poprawek. Ich pełną listę znajdziecie w changelogu. Miłego testowania.
Summary of changes from v2.5.67 to v2.5.68 ============================================Aic79XX Driver Update - Disable CIO bus stretch of MDFFSTAT so that PCI-X errors can be handled even while the sequencer is reading this register Aic79xx Driver Update o On RevA Silicon, modify firmware so that the chip does not violate the P1 setup to datavalid setup time specification. Aic79xx Driver Update o Add driver strings for the 39320A adapter. Aic79xx Driver Update to version 1.3.2 o Fix data corruption issue with Rev A hardware on IBM and Fujitsu U320 Drives. o Fix bug in ahd_pause_and_flushwork() that could prevent recovery actions from being effective. o Correct hang condition caused by attempts by the mid-layer to probe the controller's own ID. Update aicasm/Makefile so that link specifications are specified after all object files. This seems to be required in order to link correctly in some cases. Update Aic7xxx driver to version 6.2.29 o Add bus attachment specific hooks for chip-init, suspend and resume. This is a precursor to better suspend and resume support. o Fix a bug that could cause unnecessary renegotiations after selection timeouts. o Fix a hang that occurred if the mid-layer attempted to probe devices at the controller's own ID. o Add some delays to the termination detection logic for 785X chips. This might resolve some termination problems on very early controllers. Update Aic79xx Driver o Fix async negotiation bug when the initial bus reset is disabled if the target device rejects our WDTR of 0. o Fix driver initialization hang if the PCI cacheline size is 0. o Fix typos. o Fix printf arguments to work in both C99 and C89 environments. Update aic7xxx driver o Fix async negotiation bug when the initial bus reset is disabled if the target device rejects our WDTR of 0. o Fix typos. o Fix printf formats to work in both C99 and C89 environments. Update aic79xx Driver to 1.3.4 o Fix stray PCI target abort interrupt on startup due to accessing a register prior to pausing the controller. o Add cfg4icmd implementation. o Fix PCI-X issues on rev A hardware due to improper accesses to scb ram. o Correct a race condition in the error recovery path. Update Aic7xxx Driver to 6.2.30 o Fix initial DV scan to scan more than just the first target. o Fix compilation on SuSE 2.4.16 kernels. Complete Aic7xxx and Aic79xx driver merge with Linux 2.5.X mainline. Fix Aic7xxx and Aic79xx Driver builds for 2.4.X. ia64: Drop unused NEW_LOCK spinlock code and clean up unneeded test in kernel unwinder. [PATCH] ia64: CPE & CMC polling for 2.5 Here's another feature I'd like to add to MCA support; the ability to detect a flood of CMCs and switch to polling mode for retrieving CMC logs. Once no more CMC logs are found, return to and interrupt driven handler. If the flood threshold is never reached, the CMC handler simply behaves as it does today. It's useful to get the CMC logs to know that something isn't quite right, but if you end up with some bad memory it's too easy for them to interfere with useful work. I've tested this on an HP rx2600, with a known bad DIMM. This DIMM acts like it has a completely dead DRAM on it. With the current CMC handler, once I hit that range of memory addresses, the system essentially dies, constantly handling CMC errors. With this patch, the system hits the threshold quickly, but remains functional with no performance degredation once in polling mode. This patch applies against linux-2.4.20-ia64-021210 and includes: - Switching CMCs to polling mode at predeterimined threshold - If polling for CPEs, poll on all processors - Fix timestamp on log output [PATCH] ia64: declare test_bit() arg as "const" While you're fixing bitops.h, making test_bit take a const qualified arg will kill some warnings in reiserfs... ia64: Remove ia64_spinlock_contention(). ia64: Rename __put_task_struct() to free_task_struct(). Based on patch by Peter Chubb. [PATCH] ia64: clone2/clone argument order fixes do_fork is declared as: struct task_struct *do_fork(unsigned long clone_flags, unsigned long stack_start, struct pt_regs *regs, unsigned long stack_size, int *parent_tidptr, int *child_tidptr) ie. parent_tidptr is out4 and child_tidptr is out5, but the comments in clone2 were suggesting otherwise. So, we either need a patch which will codify current order of clone arguments (ie. ptid, ctid, tls; attached below - has the advantage that clone2 stays with the same ABI as in 2.5.[56]x), or the arguments of clone2 and clone should be reordered to match the IA-32 order (which is ptid, tls, ctid). ia64: Fix settimeofday(). Based on patch by Eric Piel. [PATCH] ia64: POSIX timer fixes Here is a patch to have the POSIX timer interface completly integrated in ia64 (2.5.64). The programs in userland can now access the siginfo structure. With that patch the test programs of the high resolution timers pass without error but one which seems to also be triggered on ix86: nanosleeps too short. ia64: Fix sys_clone() to take 5 input arguments. [PATCH] ia64: unwind.c - allow unw_access_gr(r0) The patch allows unw_access_gr() to read from r0, to support unwind directives such as .save ar.pfs,r0 and .save rp,r0. [SERIAL] Remove USR 56K voice modem specific PCI table entry. Jordan Breeding confirms that our serial PCI detection algorithms now correctly determine this device, and doesn't require a specific entry. ia64: Patch by Andreas Schwab: The read_lock and read_unlock macros should not use such innocent variable names like tmp because they have a high probability to clash with (part of) the argument. [PATCH] ia64: remove stale mmiob function The consensus on lkml was that devices should do reads from safe registers to ensure PIO write ordering, which means we no longer need mmiob. This patch removes the mmiob entries from the machine vector headers and io.h and updates the documentation about PIO ordering. [AGPGART] Remove unneeded inline. [PATCH] ia64: print ISR for FPSWA faults Here is a simple patch to also print isr during the handling of a floating point assist fault. [PATCH] ia64: SN makefile update take David, here's an updated patch that doesn't mess with arch/ia64/Makefile in case you hadn't applied the last one yet [PATCH] ia64: Use PAL_HALT_LIGHT in cpu_idle Here's patches for 2.4 & 2.5 to use PAL_HALT_LIGHT in cpu_idle. This helps to reduce CPU temp a little on boxes with firmware that takes advantage of this lower power state. I've tried this on a rx2600 (2x900MHz McKinley) and an i2000 (fw 117) and it shows some benefit. On McKinley systems, only the very latest PAL from Intel actually reduces power consumption in the halt_light state. For HP rx2600/zx6000/zx2000, this means you need to be running firmware 1.82. Rohit Seth, at Intel, has ru n some benchmarks with this kind of modification and found the effects of enabling halt_light to fall within the noise of mosts tests. I replaced pal_halt(1) in safe_halt with pal_halt_light() since halt_light is required to be implemented, but pal_halt(1) is an optional halt state. I'd be interested to hear of any measurements anyone does using this, where it works/fails, and if any benchmarks/applications are impacted. [PATCH] ia64: improve show_trace_task() portability Trying to port some patches from i386 to ia64 I've found that show_trace_task is the only portable way to show tasks' call traces(perhaps because it is called from ./kernel/sched.c:)). But its ia64 implementation can't work with running task. Attached patch fixes this issue. As I understand show_trace and show_stack are platform dependent or have different sense/args. ia64: Minor Makefile cleanup. First draft at making modules work again (loosely based on Rusty's original and thoroughly broken ia64 patch). Not all relocs are supported yet and the reloc code needs to be cleaned up, but simply stuff like loading the palinfo module works. Also, linkage-stubs are optimized with brl for McKinley or better. [AGPGART] Kill agp_generic_agp_3_0_enable, fold into agp_generic_agp_enable() [AGPGART] namespace cleanup agp_generic_agp_enable -> agp_generic_enable [AGPGART] other part of the namespace cleanup patch that got lost. [AGPGART] If agp 3.0 setup fails, fall back to agp 2.0 setup [AGPGART] bump copyright dates [AGPGART] Enable extra VIA GART IDs. Now that the generic enable routine can handle agp2 and agp3 setups, it should be safe to enable all these. [PATCH] ia64: mca rendezvous fix We are not setting the 'always rendezvous for mca' flag. kdb needs it set to get decent mca debugging on all cpus but I do not want kdb to change sal behaviour. Since we do not recover from mca without a debugger, I see no reason why this flag should not be on for all kernels. The rendezvous timeout was set to 100 * HZ, but SAL expects the timeout to be in milliseconds, HZ may not be 1 millisecond. The patch makes the timeout an explicit 20 seconds, semi-arbitrary value. ia64: Manual merge of Keith Owen's patch to avoid deadlock on ia64_sal_mc_rendez(). Also prefix local-variables in SAL macros to avoid name collisions. [PATCH] ia64: Cross-compile fix the attached patch (against bk-current) fixes a cross compilation problem by using the target specific objdump tool instead of the host specific one. [AGPGART] New PCI idents for new VIA GARTs [ALPHA] Remove parameter list from cond_syscall decl. [RAGE 128/CONTROL/PLATNIUM FBDEV] PPC updates. [RADEON FBDEV] PLL fix for specific type of card. [FBCON] Could be called outside of a process context. This fixes that. [PATCH] 1/7 starved changes - use a list_head for starved queue's Use a list_head per scsi_host to store a list of scsi request queues that were "starved" (they were not able to send IO because of per host limitations). [PATCH] 2/7 add missing scsi_queue_next_request calls Add missing scsi_queue_next_request calls. Add missing scsi_put_command and scsi_get_command exports. [PATCH] 3/7 consolidate single_lun code Consolidate scsi single_lun code. [PATCH] 4/7 cleanup/consolidate code in scsi_request_fn Cleanup and consolidate scsi_device and scsi_host checks in scsi_request_fn. [PATCH] 5/7 alloc a request_queue on each scsi_alloc_sdev call Call scsi_alloc_queue each time we call scsi_alloc_sdev; call scsi_free_queue each time we do not find backing LUN. This code is less optimal, but leads to cleaner code, and the lock split-up patch needs this change. [PATCH] 6/7 add and use a per-scsi_device queue_lock Add and use a per scsi_device queue_lock. [PATCH] 7/7 fix single_lun code for per-scsi_device queue_lock Fix single_lun code for per-scsi_device queue_lock [FBCON] Now we use workqueues so framebuffer code can always work in a process context. [GENERIC CURSOR] Safety check in case kmalloc failes AICLIB Update o Add aic_parse_brace_option() which handles command line options of the format ":{...{..{}}". This is used to factor out recurring code in both the aic7xxx and aic79xx drivers. Aic79XX Driver Update [Rev 1.3.5] o Clean up driver locking by making the locking semantics between 2.4.X and 2.5.X almost identical. Take advantage of SCSI_HAS_HOST_LOCK in certain RedHat kernels. o Clean up command line parsing. o Fix module unload/reload issues stemming from DV thread teardown and a missing deregistration of our reboot notifier (lost during PCI hot plug integration). o Correct precompensation value used for U320 transfers on rev A4 hardware. o Extract VPD information from the seeprom for potential use in sorting controller probes to match boot order. o Make LED activity more visible on Rev A4 hardware. Update Aic7xxx driver [Rev 6.2.31] o Clean up driver locking by making the locking semantics between 2.4.X and 2.5.X almost identical. Take advantage of SCSI_HAS_HOST_LOCK in certain RedHat kernels. o Clean up command line parsing. o Fix module unload/reload issues stemming from DV thread teardown and a missing deregistration of our reboot notifier (lost during PCI hot plug integration). [FBDEV] The image color depth of zero hack has been killed. ia64: Rewrite the relocator in the kernel module loader. Fix some bugs and simplify the handling of loader-created sections. [AGPGART] Make i7x05 compilable again. Noticed and partially fixed by Stefan Neuwirth ia64: Add ia64-specific LDFLAGS_MODULE and export unwind API to modules. ia64: Fix typo in sys_clone(). ia64: Add module.lds. ia64: Minor fixes. [I810 FBDEV] Driver updates. [FBCON] Reversed some of my cursor changes. ia64: Fix module loader by setting sh_type of place-holder sesctions to SHT_NOBITS. ia64: More module-loader fixing. [PATCH] ia64: fix settimeofday() not synchronised with gettimeofday() Eric Piel wrote: > However, now, it still gives negative difference: > # ./a.out > requested: 1047572128s 2564ns > new: 1047572128s 1588ns > diff is -0.000976000sec > > That's better but there is still something... > Can anyone reproduce this bug? Any idea about what may cause this > shifted results? > > I don't understand what does the line in settimeofday(): > nsec -= (jiffies - wall_jiffies ) * (1000000000 / HZ); Finally I read the code to do the same thing for i386 (get and settimeofday()). This explains the meaning of this line, in the i386 it's associated with the equivalent line in do_gettimeofday()! On ia64 everything is done inside of gettimeoffset(). Therefore I'm now confident that suppressing this line is a Good Thing ;-) The patch doing it wrt the bk tree is attached. The test case confirms that it works: requested: 1048681051s 194873ns new: 1048681051s 194874ns diff is 0.000001000sec That's the same result than on a 2.4.19 . This also solved an error on the high resolution timers test suite. [PATCH] ia64: fix unwinder bug in unw_access_gr() I've found this by inspecting the code: pt_regs_off returns an offset into struct pt_regs. Relative to latest bk, 2.5 has the same bug. [ARM PATCH] 1363/1: memcpy with preload support and other optimisations Patch from Nicolas Pitre This improves on what I did with patch #1362/1 by adding preloads for architectures that support it. On an XScale PXA255 this provides a 20% performance gain. Tested with all combinations of sizes and alignments. [ARM PATCH] 1441/2: add preload to the XScale copy_user_page function Patch from Nicolas Pitre This should replace patch #1441/1. This is about 20% faster than the original code, and a few percent faster than previous patch. Tried to add plds to the clear_user_page but it was of no benefit. [ARM PATCH] 1442/1: add preload support to page_copy for ARM architectures that support it Patch from Nicolas Pitre This requires the definition of PLD added to assembler.h in patch #1363/1. [ARM PATCH] 1447/1: preload support to uaccess.S Patch from Nicolas Pitre [ARM PATCH] 1445/1: [PATCH] removes CONFIG_CPU_{26,32} from arch/arm/kernel Patch from Ian Molton see subject. [FBDEV] Documentation on the device numbers of /dev/fb being mulitples of 32 is no longer true. Removed that info. [FBDEV] Logo fixes. Now we can display different color logos on screens of different color depths. [VGA16 FBDEV] Small compile error. Fixed it now. ia64: Two small MCA fixes. [PATCH] ia64: update email address My e-mail address changed and I'd like to update it in arch/ia64/kernel/acpi.c. [PATCH] ia64: don't try to synchronize ITCs on ITC_DRIFT platforms A small patch for 2.4 that stops the kernel from trying to syncrhonize ITC clocks between CPUs if we know that the ITC isn't synchronized across the backplane. [PATCH] ia64: Fix request_module from ia32 process When an ia32 process triggers request_module the kernel cannot execute modprobe because the kernel thread still has the ia32 address limits in force. I think a kernel thread should always have the ia64 address limits, similar to what sys32_execve is doing. ia64: Patch by Andreas Schwab to fix sys32_ptrace(). ia64: Change struct ia64_fpreg so it will get 16-byte alignment with all ia64 compilers, not just GCC. [PATCH] scsi-locking-2.5 rename scsi_check_sdev and James - Patch against linux-scsi.bkbits.net/scsi-locking-2.5, per linux-scsi discussion. Rename scsi_check_sdev and scsi_check_shost to scsi_dev_queue_ready and scsi_host_queue_ready, and change their return values. ===== drivers/scsi/scsi_lib.c 1.81 vs edited ===== [PATCH] USB: input class hookup to existing support Results in this tree /sys/class/input with a combined keyboard/mouse USB device: [root@w-hlinder2 input]# tree /sys/class/input /sys/class/input |-- devices | |-- 0 -> ../../../devices/pci0/00:0f.2/usb1/1-1/1-1.1/1-1.1:0 | |-- 1 -> ../../../devices/pci0/00:0f.2/usb1/1-1/1-1.1/1-1.1:1 | `-- 2 -> ../../../devices/pci0/00:0f.2/usb1/1-1/1-1.2/1-1.2:0 |-- drivers | `-- usb:hid -> ../../../bus/usb/drivers/hid `-- mouse [PATCH] USB speedtouch: handle failure of usb_set_interface. [PATCH] USB: leave usage counts during probe/remove to driver core driver core protects us with semaphores during probe/disconnect. We can stop messing with the module usage counts. [PATCH] USB: ehci-hcd, minor hardware tweaks This tweaks the hardware in two minor ways, being more forgiving of what are either hardware bugs or hard-to-see driver bugs. - Some silicon seems to mis-handle dummy qtds on occasion, writing them into the qh and thus stopping progress unless something times it out and cancels it (scsi-eh etc). This initializes such qtds slightly differently, so some such cases will make the driver automatically recover, and so all such errors will fail in the same way. - In case of dodgy behavior with respect to unlinking, don't modify a field. Silicon that's (wrongly) reading this will have a chance to read the old value while it's still valid. Also minor diagnostic tweaks for better uniformity/usability. [PATCH] USB: ohci-hcd, pci posting paranoia Flushes some posted PCI writes in case of trouble. Lack of these hasn't been seen to be a problem; the update mostly affects run-once init paths. Thanks to Arjan for the code-review comments. [AGPGART] Remove unneeded test. Spotted by ISHIKAWA Mutsumi [FBDEV] Massive cleanups of the cursor api. [PATCH] ia64: machine vectors for readX routines We need readX() to be machine vectors since some platforms don't provide DMA coherence via PIO reads (PCI drivers and the spec imply that this is a good idea). Writes are ok though for all existing ia64 platforms (and hopefully it'll stay that way). [PATCH] ia64: replace cpu_is_online with cpu_online Consolidate the uses of cpu_is_online() to use the (relatively) new cpu_online() macro. ia64: Fix IA64_FETCHADD() macro. [FBDEV] Final cursor code cleanups. Now the burden of handling the cursor code lies on the driver side. The reason for this is that a invalid cursor might come from userland. [FBDEV SOFT CURSOR] Test to see if kmalloc failed. [FBCON] Test to see if the user priovides there own work queue. [FBDEV] Use C99 style. [PATCH] ia64: fix missing symbol exports 3) with CONFIG_NUMA set, there are undefined symbols building modules: scripts/modpost vmlinux drivers/md/dm-mod.o drivers/net/e1000/e1000.o drivers/net/eepro100.o drivers/md/md.o drivers/net/mii.o fs/xfs/xfs.o *** Warning: cpu_info__per_cpu [fs/xfs/xfs.ko] undefined! *** Warning: cpu_info__per_cpu [drivers/md/md.ko] undefined! *** Warning: cpu_to_node_map [drivers/md/md.ko] undefined! exporting them in ia64_ksyms.c fixes the problem. ia64: Checkin support files for vendor-specific ACPI extensions. Fix spelling of Hewlett-Packard. [PATCH] ia64: generic build fix trivial build fix for the generic kernel target [PATCH] ia64: remove platform_pci_dma_addres This removes platform_pci_dma_address. Since the scatterlist in 2.5 has a dma_address, seems like we can expect a certain usage of it. SGI folks may want to verify this doesn't break their DMA engines. ia64: Trivial stack-size correction in mca.c. Patch by Keith Owens. [PATCH] ia64: update PCI segment support Update to the PCI segment support that Bjorn posted around 2.5.19ish. [FBDEV] Killed off shutting down IRQs. We need them for some types of hardware. [FBDEV] Cleanup with FB_CUR_SETCUR and the enable field. Fix to set the cursor shape when we change the size of the cursor. [I810 FBDEV] Updates to the new cursor code. [FBDEV GENERIC CURSOR] A memcpy optimization. Also only allocate a new mask field when the size of the cursor changes. [PATCH] USB: locking reset/probe - mutual exclusion between reset() and probe() [PATCH] USB: removing unnecessary calls to usb_set_configuration - remove unnecessary calls to usb_set_configuration [PATCH] USB: small fix to pegasus.c Using cpu_to_le16p on a __u8 variable is wrong, and gives a compile warning on PPC. It's better to use cpu_to_le16 in this case. Here is a patch to fix it. Please apply. [PATCH] USB: C99 initializers for drivers/usb files Here are two patches that convert the files to use C99 initializers. The patches are against current BK. [PATCH] USB: pegasus link status fix fixed up the link status detection [PATCH] USB usbnet: dynamic config, cdc-ether, net1080 This patch: - Makes "usbnet" pay attention to device descriptors in the most common cases; there's less need to embed device hardware details. This lets it work with high speed devices, and should help interop with the newer ARM/PXA kernels "usb-eth" (same vid/pid, but different endpoints). - Adds some new CDC Ethernet support, which is partly enabled: the Zaurus SL-5500 code uses it, with the current FRAMING_Z flag overriding normal CDC framing on-the-wire. (Most of the other "minidrivers" use CDC framing, except Net1080 and GeneSys.) - Merges a patch from Johannes to recover from some net1080 framing errors by flushing the fifos ... the chip gets into a wierd mode, this makes the link more robust. (Thanks!) - Gets rid of a family of cpu/logfile saturating loops that could show up in early stages of disconnect processing, while we're getting rx/tx errors continuously since khubd hasn't tried to disconnect() us yet. (Pathological case, with lots of logging enabled: khubd never gets scheduled!) - Uses deeper queues at high speed, so the host controllers can stay busy transferring packets even when IRQs get held off for several milliseconds. That pipelining gives better throughput too -- 4x more with one device, says TTCP. With the possible exception of multicast support, this code should be a fine replacement to "cdc-ether" ... certainly its faster for high speed devices. Some later patch should likely do a switch-over. (Which would also resolve a Zaurus hotplugging bug: "cdc-ether" doesn't blacklist it.) [PATCH] USB: kerneldoc for usbfs So far as I know, "usbfs" was never documented ... so here's a patch with some text I've had sitting around, merging it into the other USB kerneldoc. It should be accurate, down to the warnings about why not to use several of the calls, though cross-review with the code would be good too. A notable omission is any details on the async APIs. [PATCH] USB: set_configuration() missed some state I noticed that the usb_set_configuration() code was leaving endpoints halted ... likely not a problem just now since that routine can't be used safely except during enumeration, but better to fix this than not. [PATCH] USB: remove redundant checks for NULL when it can never happen. kobject: cause /sbin/hotplug to be called when kobjects are added and removed This only happens if a kobject belongs to a subsystem that has specified a set of hotplug operations. Based on work done by Kevin Fleming Kobject: add NULL to decl_subsys() due to addition of hotplug operations driver core: move the hotplug support for /sys/devices to use the kobject logic. We can't switch /sys/class or /sys/bus to use this because they are not creating new kobjects, only linking to the kobjects in /sys/devices. block: add /sbin/hotplug support for when block devices are created and destroyed. Kobject: add NULL to decl_subsys() due to addition of hotplug operations Oops, forgot the drivers/hotplug/pci_hotplug_core.c use of this... [IPSEC]: Move xfrm type destructor out of spinlock. [sparc]: BUglet in copy_thread [sparc] Force type in __put_user [sparc]: pte_file & friends [sparc] Add #include [sparc] Update system.h (gcc-3 & misc) o linux/net.h: prune the include dependency tree, remove include socket.h Use struct forward declaration and fix irda.h and netlink.h to include what uses (only sa_family_t). [ARM PATCH] 1489/1: SA-1111: usb_dev needs non-zero dev.dma_mask for usb core to work properly Patch from Christopher Hoover [ARM PATCH] 1490/1: [BADGE4] Enable second serial port when needed Patch from Christopher Hoover This patch enables the second serial port on the BadgePAD 4, when the port is opened. [ARM PATCH] 1492/1: [BADGE4] Make PCMCIA work in 2.5.65-rmk1 fro BadgePAD 4 Patch from Christopher Hoover [AGPGART] Remove flawed 'follow secondary PCI bus' logic. This isn't as nice as the previous code, but it gets things working on all boxes tried. The old code only worked correctly on the Intel E7x05 bridges. [ARM PATCH] 1493/1: [BADGE4] Allow larger flash parts and partition for kernel in jffs2 Patch from Christopher Hoover This patch allows for larger flash parts (and keeps the kernel from crashing on these) and changes the partitioning on BadgePAD 4. [ARM PATCH] 1494/1: [mtd] Make code compile without CONFIG_MTD_CONCAT Patch from Christopher Hoover Make code compile/link/work without CONFIG_MTD_CONCAT. [ARM PATCH] 1473/1: Add Russell's porting information to Documentation Patch from Eli Carter # Tue Apr 1 11:50:11 CST 2003 # Grab a copy of Russell's information on important porting information and # stick it in the Documentation/arm directory where people will find it before # posting to the lists. # # Patch is against 2.5.65-rmk1 # # Documentation/arm/Porting | 135 ++++++++++++++++++++++++++++++++++++++++++++++ # 1 files changed, 135 insertions(+) # [ARM PATCH] 1472/1: Rename *-iop310 directories to *-iop3xx Patch from Eli Carter # Mon Mar 31 15:53:24 CST 2003 # Rename the *-iop310 directories to *-iop3xx, and fix up filenames in # comments. # Modify the default config to build for me. # # This patch may be applied by hand, or may be executed as a shell script. # Patch is against 2.5.65-rmk1 # # arch/arm/Kconfig | 2 # arch/arm/Makefile | 2 # arch/arm/def-configs/iq80310 | 634 +++++++++++++++------------------- # arch/arm/mach-iop3xx/arch.c | 2 # arch/arm/mach-iop3xx/iop310-irq.c | 2 # arch/arm/mach-iop3xx/iop310-pci.c | 2 # arch/arm/mach-iop3xx/iq80310-irq.c | 2 # arch/arm/mach-iop3xx/iq80310-pci.c | 2 # arch/arm/mach-iop3xx/iq80310-time.c | 2 # arch/arm/mach-iop3xx/mm.c | 2 # arch/arm/mach-iop3xx/xs80200-irq.c | 2 # include/asm-arm/arch-iop3xx/ide.h | 2 # include/asm-arm/arch-iop3xx/io.h | 2 # include/asm-arm/arch-iop3xx/iop310.h | 2 # include/asm-arm/arch-iop3xx/irqs.h | 2 # include/asm-arm/arch-iop3xx/serial.h | 2 # include/asm-arm/arch-iop3xx/vmalloc.h | 2 # 17 files changed, 301 insertions(+), 365 deletions(-) # [ARM PATCH] 1472/1: Rename *-iop310 directories to *-iop3xx Patch from Eli Carter # Mon Mar 31 15:53:24 CST 2003 # Rename the *-iop310 directories to *-iop3xx, and fix up filenames in # comments. # Modify the default config to build for me. # # This patch may be applied by hand, or may be executed as a shell script. # Patch is against 2.5.65-rmk1 # # arch/arm/Kconfig | 2 # arch/arm/Makefile | 2 # arch/arm/def-configs/iq80310 | 634 +++++++++++++++------------------- # arch/arm/mach-iop3xx/arch.c | 2 # arch/arm/mach-iop3xx/iop310-irq.c | 2 # arch/arm/mach-iop3xx/iop310-pci.c | 2 # arch/arm/mach-iop3xx/iq80310-irq.c | 2 # arch/arm/mach-iop3xx/iq80310-pci.c | 2 # arch/arm/mach-iop3xx/iq80310-time.c | 2 # arch/arm/mach-iop3xx/mm.c | 2 # arch/arm/mach-iop3xx/xs80200-irq.c | 2 # include/asm-arm/arch-iop3xx/ide.h | 2 # include/asm-arm/arch-iop3xx/io.h | 2 # include/asm-arm/arch-iop3xx/iop310.h | 2 # include/asm-arm/arch-iop3xx/irqs.h | 2 # include/asm-arm/arch-iop3xx/serial.h | 2 # include/asm-arm/arch-iop3xx/vmalloc.h | 2 # 17 files changed, 301 insertions(+), 365 deletions(-) # [ARM PATCH] 1474/1: fix iq80310 default config Patch from Eli Carter # Tue Apr 1 12:29:20 CST 2003 # Fix the default config for the iq80310 board so it does not panic on boot, # and enables ksymoops. # # Patch against 2.5.65 + 1472 # # arch/arm/def-configs/iq80310 | 8 ++------ # 1 files changed, 2 insertions(+), 6 deletions(-) Cset exclude: davej@codemonkey.org.uk|ChangeSet|20030328161219|08037 [NET]: skb_headlen() cleanup. i2c: fix up CONFIG_I2C_SENSOR configuration logic. Thanks to Ardrian Bunk for help with this. [PATCH] i2c: convert via686a i2c driver to sysfs i2c: fix up via686a.c driver based on previous i2c api changes. [XFS] remove busy inode check in the umount path - Linux checked it for us before calling into the filesystem. We're beyond the point of no return for umount anyway SGI Modid: 2.5.x-xfs:slinx:142731a [PATCH] usb-storage: fix CB/CBI When we fixed the error handling, we accidentally made a mistake. A STALL on a control endpoint isn't necessarily a fatal thing -- it can be used to indicate a command failure. This fixes bugzilla bug #510. - A control endpoint stall when sending the command to a CB/CBI device is legal. Our error handling was just a little too agressive. [PATCH] usb-storage: variable renames This patch changes the struct us_data 'ss' to 'us' to be consistent with the rest of the code. The old name was a legacy artifact. There are no functional changes here. [PATCH] usb-storage: remove BUG/BUG_ON This patch changes BUG and BUG_ON to print error messages. It is done to be (a) a little more robust, and (b) complies with Linus' idea of no BUGs unless absolutely necessary. [PATCH] usb-storage: add info to /proc interface This patch adds some information about the quirks of the device to the /proc interface. [XFS] Fix definition of setresblks - nothing uses it yet, but DMF will (so fix now). SGI Modid: 2.5.x-xfs:slinx:142797a [XFS] Fix a pagebuf leak with the pagebufs used to coordinate IO completion for unwritten extent writes. SGI Modid: 2.5.x-xfs:slinx:143052a [XFS] Fix up some minor namespace pollution problems. SGI Modid: 2.5.x-xfs:slinx:143053a [XFS] remove atomicIncWithWrap SGI Modid: 2.5.x-xfs:slinx:143647a [PATCH] USB: patch for oops in io_edgeport.c I tracked down a problem that caused an oops in io_edgeport.c. The oops is reliably reproduced by using an EdgePort USB serial port in dosemu and then exiting dosemu. When dosemu closed the port the oops would occur. (Tested in RH 7.3 2.4.18-10.) The problem was that a USB cmd callback would come in after the close with the tty struct freed, and the edge_bulk_out_cmd_callback function would do a wakeup on the tty->write_wait queue. The tty struct was gone (I checked that tty->magic was bad) and the wakeup would oops. As you did in other places in io_edgeport.c, I added a check that edge_port->open was true before using the edge_port->port->tty struct. I added a similar check in edge_bulk_out_data_callback, though I never actually saw the problem here. I notice that in 2.4.20 a check has been added to be sure that edge_port->port->tty is not null--however, this is not enough because the tty pointer is not set to null when the port is closed. An alternate solution in 2.4.20 would be to set the usb_serial_port->tty pointer to null in usbserial.c serial_close(). This seems like a good thing to do in general, since the tty struct should not be used after a close which frees it. If you would like I investigate this a bit more--it could affect other usb serial drivers and reveal some hidden bugs. [XFS] merge over some lost changes from the XFS tree USB: set port->tty to NULL after we have closed the port This lets any of the many checks for this contition actually have a chance of working :) ia64: Fix inconsistency in sys32_execve(). Reported by Chandra Kapate). Fix a series of NFS read/readdir/readlink errors. Tightens consistency checks on the process of reading the reply skb in the SunRPC client. Reject a reply if we didn't succeed in reading the entire skb. Remove bogus check on the size of NFSv4 'readdir' cookies. Prepare for the introduction of NFSv4 state code. Split out the open() method for regular files from that of directories. Implement stateful open() for NFSv4 as per RFC3010-bis. The resulting state is saved in the NFS-specific part of the struct inode. Initially we just start with 3 possible states: - open for read - open for write - open for read/write Setup code to tear down the NFSv4 state once we're done with a file. Make NFSv4 'setattr()' method use the cached stateid if the file is already open. Make NFSv4 'read' code use the cached stateid if it exists. Make the NFSv4 write code use the stateid if it exists. Add support for mapping NFSv4 remote user/group names into local unix-style uid/gids. Note that this makes use of the RPC client upcall mechanism (rpc_pipefs) to notify a userland daemon that does the actual mapping. The results are then cached in the kernel. The userland daemon can be downloaded from the CITI NFSv4 page at http://www.citi.umich.edu/projects/nfsv4/ Add hooks into the NFSv4 XDR code to make use of the new uid/gid mapper upcall mechanism. i2c: fix up compile error in scx200_i2c driver. [SPARC64]: syscalls returning long [SPARC]: Fix sys_ipc to return ENOSYS instead of EINVAL as appropriate. [PATCH] SET_MODULE_OWNER for tulip_core Tested with a pcmcia tulip [PATCH] Unreachable code in drivers_net_fc_iph5526.c From: Scott Russell - Rearranged unreachable printk code reported at kbugs.org [PATCH] Remove naked GFP_DMA from drivers_net_macmace.c From: Matthew Wilcox Can use GFP_KER NEL since this is a netdevice ->open routine. [PATCH] Clear up GFP confusion in rcpci45.c [ Jeff, Pete: looks correct. Please check. --RR ] From: Matthew Wilcox - Move PCI ID definitions to pci_ids.h - The GFP_DMA in rcpci45_init_one should be GFP_KERNEL because it's a pci_driver ->probe method, so it can sleep. - The GFP_DMA in RC_allocate_and_post_buffers should be GFP_ATOMIC because it's called from a timer function, so it must not sleep. [PATCH] [PATCH 2.5.63] net_wan_sdla_chdlc tty_driver add .owner field remove MOD_INC_DEC_USE_COUNT From: Hanna Linder [PATCH] [PATCH 2.5.63] net_wan_pc300_tty tty_driver add .owner field remove MOD_INC_DEC_USE_COUNT From: Hanna Linder [PATCH] [2.5 patch] fix the compilation of drivers_net_tokenring_tms380tr.c [ Guys, assume this is OK? ] From: Adrian Bunk Since 2.5.61 compilation of drivers/net/tokenring/tms380tr.c fails with the following error: <-- snip --> ... gcc -Wp,-MD,drivers/net/tokenring/.tms380tr.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=k6 -Iinclude/asm-i386/mach-default -nostdinc -iwithprefix include -DKBUILD_BASENAME=tms380tr -DKBUILD_MODNAME=tms380tr -c -o drivers/net/tokenring/tms380tr.o drivers/net/tokenring/tms380tr.c drivers/net/tokenring/tms380tr.c: In function `tms380tr_open': drivers/net/tokenring/tms380tr.c:260: invalid type argument of `->' drivers/net/tokenring/tms380tr.c:260: invalid type argument of `->' drivers/net/tokenring/tms380tr.c:260: invalid type argument of `->' drivers/net/tokenring/tms380tr.c:260: invalid type argument of `->' drivers/net/tokenring/tms380tr.c:260: invalid type argument of `->' drivers/net/tokenring/tms380tr.c:260: invalid type argument of `->' drivers/net/tokenring/tms380tr.c: In function `tms380tr_init_adapter': drivers/net/tokenring/tms380tr.c:1461: warning: long unsigned int format, different type arg (arg3) make[3]: *** [drivers/net/tokenring/tms380tr.o] Error 1 <-- snip --> The following patch by Jochen Friedrich fixes both the compile error and the warning: [E1000] Revert NAPI back to interrupt disable/enable mode * Undo botched attempt to run NAPI without disabling/enabling interrupts. [Robert.Olssen@data.slu.se] [PATCH] [PATCH 2.5.63] epca tty_driver add .owner field remove MOD_INC_DEC_USE_COUNT [ Arjan: you touched it last AFAICT. Seems trivial. --RR ] From: Hanna Linder [E1000] Fixed syntax error for C99 initializers * Fixed syntax error for C99 initializers [IPSEC]: AH/ESP forget to free private structs. [TCP]: Missing SNMP stats. [IPSEC]: Really move type destructor out of spinlock. Avoid using pointers to anonymous structure initializers. It's a gcc'ism, and even gcc can apparently get confused by it. [PATCH] no blk_queue_empty The single missing bit, please add that as well. Was missed because this driver actually used elv_queue_empty, not blk_queue_empty. [PATCH] move q->queuedata assign after queue init I want to make blk_init_queue() zero the queue, so we don't get anymore nasty bugs with uninitialized variables. IDE is setting queuedata before init though. Make it more explicit that jiffies are "unsigned long", but that we for the initial value ctually want to check only wrap-around in an "unsigned int". [PATCH] alpha typos part 1 (Steven Cole) [PATCH] alpha typos part 2 [PATCH] fix the mode for bios call in x86-32 as well as -64 (Andi Kleen) [PATCH] Config.in typos (Steve Cole and co) [PATCH] read extended cpu revision data (Dave Jones) [PATCH] fix i387 fxsr conversion [PATCH] parisc - syscalls return long purity ... [PATCH] ppc64 syscalls return long purity [PATCH] v850 updates (Miles Bader) [PATCH] compatmac not needed [PATCH] compatmac not needed uaccess.h is Fixes unknown symbol copy_.. in some builds [PATCH] PC9800 floppy driver (Osamu Tomita) [PATCH] config for PC98xx floppy [PATCH] MOD_* can go for floppy (Bob Miller) [PATCH] makefile for pc9800 [PATCH] unversion.h and compatmac applicom.c [PATCH] update char Kconfig for PC9800 [PATCH] exterminate compatmac in sx (compatmac cleanup is all Adrian Bunk) [PATCH] error handling for upd4990a (Stephan Maciej) [PATCH] clean up pci interrupt line whacking [PATCH] fix our handling of BIOS forced PIO serverworks OSB4 (Robert Hentosh & me) [PATCH] fix up capslock on pc9800 [PATCH] add drivers/media/common for mixed dvb/analog device stuff (Martin Hunold) [PATCH] update the dvb core [PATCH] update the dvb front end chips (Again all DVB is Martin Hunold) [PATCH] kill off a load of stuff now in common dvb (These changes are big because they are the result of Martin Hunold resolving a *huge* long term fork in the DVB code base). We now have one DVB codebase so the changes while big are very good news [PATCH] fix radio-cadet build [PATCH] bring core media/video up to date with dvb changes [PATCH] remaining dvb bits [PATCH] fix error in cops port to 2.5 [PATCH] port ltpc to 2.5 [PATCH] fix arcnet locking for 2.5 [PATCH] first cut at scc.c for 2.5 locking [PATCH] fix up yam for 2.5 locking [PATCH] Update lp486e for 2.5 [PATCH] fix macmace get_free_pages parameters (Matthew Wilcox) [PATCH] first cut at 3c574_cs for SMP safety etc The old code was totally hosed for SMP, the windowing makes this stuff tricky so it may need more work [PATCH] update slip to new tty module locks [PATCH] fix cosa verify_area [PATCH] first pass at fixing strip for 2.5 [PATCH] junk header removal [PATCH] compatmac is not needed [PATCH] compatmac is not needed [PATCH] asm-alpha typo fixe (Steven Cole)