Linus Torvalds: Linux 2.5.8


        Release notes for v2.5.8

Summary of changes from v2.5.8-pre3 to v2.5.8

<kraxel@bytesex.org> (02/04/08 1.369.108.1)
        adapt zotrix radio driver to pre 2.4.7 videodev redesign

<kraxel@bytesex.org> (02/04/08 1.369.108.2)
        adapt v4l radio drivers to 2.5.8-pre1 videodev fix.

<kraxel@bytesex.org> (02/04/08 1.369.109.1)
        adapt v4l video drivers to 2.5.8-pre1 videodev fixes.

<kraxel@bytesex.org> (02/04/08 1.369.109.2)
        adapt meye v4l driver to 2.5.8-pre1 videodev fixes.

<kraxel@bytesex.org> (02/04/08 1.369.110.1)
        adapt v4l usb cam drivers to 2.4.8-pre1 videodev fixes.

<paulus@nanango.paulus.ozlabs.org> (02/04/10 1.457)
        Add flush_tlb_kernel_range for PPC and clean up the PPC tlb
        flushing code a little.

<paulus@nanango.paulus.ozlabs.org> (02/04/10 1.458)
        Minor PPC changes - add sched_get/setaffinity, include tlbflush.h
        and cacheflush.h in a few places where they are needed.

<paulus@nanango.paulus.ozlabs.org> (02/04/10 1.456.1.1)
        PPP updates and fixes.  This fixes the various SMP races, deadlocks
        and scheduling-in-interrupt problems we had, and also makes it
        much faster when handling large numbers (100s or more) of PPP units.

<greg@kroah.com> (02/04/10 1.456.2.1)
        IBM PCI Hotplug driver
        Only build the IBM PCI hotplug driver if CONFIG_X86_IO_APIC is selected

<greg@kroah.com> (02/04/10 1.456.2.2)
        PCI Hotplug Makefile cleanup
        removed the list-multi targets, as they aren't needed anymore.

<greg@kroah.com> (02/04/10 1.456.2.3)
        IBM PCI Hotplug driver
        fixed linker bug when driver is compiled into the kernel.

<greg@kroah.com> (02/04/10 1.456.2.4)
        export the IO_APIC_get_PCI_irq_vector function, as the IBM PCI Hotplug
        driver needs this.  This is already done in 2.4.x

<rusty@rustcorp.com.au> (02/04/10 1.456.3.1)
        [PATCH] 2.5.8-pre3 set_bit cleanup II
        This changes over some bogus casts, and converts the ext2, hfs and
        minix set-bit macros.  Also changes pte and open_fds to hand the
        actual bitfield rather than whole structure.
        No object code changes

<rusty@rustcorp.com.au> (02/04/10 1.456.3.2)
        [PATCH] 2.5.8-pre3 set_bit cleanup III
        This removes gratuitous & operators in front of tty->process_char_map
        and tty->read_flags.
        No object code changes

<rusty@rustcorp.com.au> (02/04/10 1.456.3.3)
        [PATCH] 2.5.8-pre3 set_bit cleanup IV
        This changes everything arch specific PPC and i386 which should have
        been unsigned long (it doesn't *matter*, but bad habits get copied to
        where it does matter).
        No object code changes

<akpm@zip.com.au> (02/04/10 1.456.3.4)
        [PATCH] Velikov/Hellwig radix-tree pagecache
        Before the mempool was added, the VM was getting many, many
        0-order allocation failures due to the atomic ratnode
        allocations inside swap_out.  That monster mempool is
        doing its job - drove a 256meg machine a gigabyte into
        swap with no ratnode allocation failures at all.
        So we do need to trim that pool a bit, and also handle
        the case where swap_out fails, and not just keep
        pointlessly calling it.

<akpm@zip.com.au> (02/04/10 1.456.3.5)
        [PATCH] readahead
        I'd like to be able to claim amazing speedups, but
        the best benchmark I could find was diffing two
        256 megabyte files, which is about 10% quicker.  And
        that is probably due to the window size being effectively
        50% larger.
        Fact is, any disk worth owning nowadays has a segmented
        2-megabyte cache, and OS-level readahead mainly seems
        to save on CPU cycles rather than overall throughput.
        Once you start reading more streams than there are segments
        in the disk cache we start to win.
        Still.  The main motivation for this work is to
        clean the code up, and to create a central point at
        which many pages are marshalled together so that
        they can all be encapsulated into the smallest possible
        number of BIOs, and injected into the request layer.
        A number of filesystems were poking around inside the
        readahead state variables.  I'm not really sure what they
        were up to, but I took all that out.  The readahead
        code manages its own state autonomously and should not
        need any hints.
        - Unifies the current three readahead functions (mmap reads, read(2)
          and sys_readhead) into a single implementation.
        - More aggressive in building up the readahead windows.

        - More conservative in tearing them down.
        - Special start-of-file heuristics.
        - Preallocates the readahead pages, to avoid the (never demonstrated,
          but potentially catastrophic) scenario where allocation of readahead
          pages causes the allocator to perform VM writeout.
        - Gets all the readahead pages gathered together in
          one spot, so they can be marshalled into big BIOs.
        - reinstates the readahead ioctls, so hdparm(8) and blockdev(8)
          are working again.  The readahead settings are now per-request-queue,
          and the drivers never have to know about it.  I use blockdev(8).
          It works in units of 512 bytes.
        - Identifies readahead thrashing.
          Also attempts to handle it.  Certainly the changes here
          delay the onset of catastrophic readahead thrashing by
          quite a lot, and decrease it seriousness as we get more
          deeply into it, but it's still pretty bad.

<akpm@zip.com.au> (02/04/10 1.456.3.6)
        [PATCH] page->buffers abstraction
        page->buffers is a bit of a layering violation.  Not all address_spaces
        have pages which are backed by buffers.
        The exclusive use of page->buffers for buffers means that a piece of
        prime real estate in struct page is unavailable to other forms of
        This patch turns page->buffers into `unsigned long page->private' and
        sets in place all the infrastructure which is needed to allow other
        address_spaces to use this storage.
        This change alows the multipage-bio-writeout patches to use
        page->private to cache the results of an earlier get_block(), so
        repeated calls into the filesystem are not needed in the case of file
        Devlopers should think carefully before calling try_to_free_buffers()
        or block_flushpage() or writeout_one_page() or waitfor_one_page()
        against a page.  It's only legal to do this if you *know* that the page
        is buffer-backed.  And only the address_space knows that.
        Arguably, we need new a_ops for writeout_one_page() and
        waitfor_one_page().  But I have more patches on the boil which
        obsolete these functions in favour of ->writepage() and wait_on_page().
        The new PG_private page bit is used to indicate that there
        is something at page->private.  The core kernel does not
        know what that object actually is, just that it's there.
        The kernel must call a_ops->releasepage() to try to make
        page->private go away.  And a_ops->flushpage() at truncate

<akpm@zip.com.au> (02/04/10 1.456.3.7)
        [PATCH] writeback daemons
        This patch implements a gang-of-threads which are designed to
        be used for dirty data writeback. "pdflush" -> dirty page
        flush, or something.
        The number of threads is dynamically managed by a simple
        demand-driven algorithm.
        "Oh no, more kernel threads".  Don't worry, kupdate and
        bdflush disappear later.
        The intent is that no two pdflush threads are ever performing
        writeback against the same request queue at the same time.
        It would be wasteful to do that.  My current patches don't
        quite achieve this; I need to move the state into the request
        queue itself...
        The driver for implementing the thread pool was to avoid the
        possibility where bdflush gets stuck on one device's get_request_wait()
        queue while lots of other disks sit idle.  Also generality,
        abstraction, and the need to have something in place to perform
        the address_space-based writeback when the buffer_head-based
        writeback disappears.
        There is no provision inside the pdflush code itself to prevent
        many threads from working against the same device.  That's
        the responsibility of the caller.
        The main API function, `pdflush_operation()' attempts to find
        a thread to do some work for you.  It is not reliable - it may
        return -1 and say "sorry, I didn't do that".  This happens if
        all threads are busy.
        One _could_ extend pdflush_operation() to queue the work so that
        it is guaranteed to happen.  If there's a need, that additional
        minor complexity can be added.

<akpm@zip.com.au> (02/04/10 1.456.3.8)
        [PATCH] use pdflush for unused inode writeback
        This is pdflush's first application!  The writeback of
        the unused inodes list by keventd is removed, and a
        pdflush thread is dispatched instead.
        There is a need for exclusion - to prevent all the
        pdflush threads from working against the same request
        queue.  This is implemented locally.  And this is a
        problem, because other pdflush threads can be dispatched
        to writeback other filesystem objects, and they don't
        know that there's already a pdflush thread working that
        request queue.
        So moving the exclusion into the request queue itself
        is on my things-to-do-list.  But the code as-is works
        OK - under a `dbench 100' load the number of pdflush
        instances can grow as high as four or five.  Some fine
        tuning is needed...

<akpm@zip.com.au> (02/04/10 1.456.3.9)
        [PATCH] replace kupdate and bdflush with pdflush
        Pretty simple.
        - use a timer to kick off a pdflush thread every five seconds
          to run the kupdate code.
        - wakeup_bdflush() kicks off a pdflush thread to run the current
          bdflush function.
        There's some loss of functionality here - the ability to tune
        the writeback periods.  The numbers are hardwired at present.
        But the intent is that buffer-based writeback disappears
        altogether.  New mechanisms for tuning the writeback will
        need to be introduced.

<viro@math.psu.edu> (02/04/10 1.456.3.10)
        [PATCH] cramfs cleanup

        All places where we do blkdev_size_in_bytes(sb->s_dev) are bogus - we
        can get the same information from ->s_bdev without messing with kdev_t,
        major/minor, etc.
        There will be more patches of that kind - in the long run I'd expect
        only one caller of blkdev_size_in_bytes() to survive.  One if
        fs/block_dev.c, that is - called when we open device.

<viro@math.psu.edu> (02/04/10 1.456.3.11)
        [PATCH] mtdblock fixes
        Assorted compile fixes in mtdblock.c

<viro@math.psu.edu> (02/04/10 1.456.3.12)
        [PATCH] jffs2_get_sb() fixes
        Fixes races in jffs2_get_sb() - current code has a window when two
        mounts of the same mtd device can miss each other, resulting in two
        active instances of jffs2 fighting over the same device.

<viro@math.psu.edu> (02/04/10 1.456.3.13)
        [PATCH] more blkdev_size_in_bytes() removals
        More places where we want the size of block device and have relevant
        struct block_device * available,

<agrover@groveronline.com> (02/04/10 1.456.2.6)
        [PATCH] redo patch clobbered by ACPI
        The latest ACPI merge accidentally clobbered another change in pci-irq.c.
        Here's the original patch again (applies fine except for an offset)
        Thanks -- Andy

<scameron@quandary.cca.cpqcorp.net> (02/04/10 1.456.2.7)
        [PATCH] cciss.c, use pdev->irq after pci_enable_device
        Patch to cciss driver in 2.4.8-pre2 to use pdev->irq
        and other pci_dev structure elements only after calling
        Morten Helgesen <admin@nextframe.net> sent me this.

<dalecki@evision-ventures.com> (02/04/10 1.461)
        [PATCH] 2.5.8-pre3 IDE 30
        - Eliminate ide_task_t and rename struct ide_task_s to struct ata_taskfile.
           This should become the entity which is holding all data for a request in the
           future. If this turns out to be the case, we will just rename it to
        - Reduce the number of arguments for the ata_taskfile() function. This helps to
           wipe quite a lot of code out as well.
        This stage is not sensitive, so let's make a patch before we start to integrate
        the last work of Jens Axboe.

<dalecki@evision-ventures.com> (02/04/10 1.462)
        [PATCH] 2.5.8-pre3 IDE 31
        - Integrate the TCQ stuff from Jens Axboe. Deal with the conflicts, apply some
           cosmetic changes. We are still not at a stage where we could immediately
           integrate ata_request and ata_taskfile but we are no longer far away.
        - Clean up the data transfer function in ide-disk to use ata_request structures
        - Kill useless leading version information in ide-disk.c
        - Replace the ATA_AR_INIT macro with inline ata_ar_init() function.
        - Replace IDE_CLEAR_TAG with ata_clear_tag().
        - Replace IDE_SET_TAG with ata_set_tag().
        - Kill georgeous ide_dmafunc_verbose().
        - Fix typo in ide_enable_queued() (ide-tcq.c!)
        Apparently there still problems with a TCQ enabled device and a not enabled
        device on the same channel, but let's first synchronize up with Jens.

<reiser@namesys.com> (02/04/10 1.463)
        [PATCH] ReiserFS directory atime fix
        This patch is to fix a problem when directory's atime was not updated on
        readdir(). Patch is written by Chris Mason.

<reiser@namesys.com> (02/04/10 1.464)
        [PATCH] ReiserFS endianness fix
        This patch is to fix a lookup problem on bigendian platforms

<reiser@namesys.com> (02/04/10 1.465)
        [PATCH] ReiserFS get_block fix
        This patch is to convert pap14030 panic into warning. While doing this,
        a bug was uncovered, that when get_block() returns a failure, buffer
        is still marked as mapped, and on subsequent access to this buffer
        get_block() was not called anymore. This is also fixed.

<reiser@namesys.com> (02/04/10 1.466)
        [PATCH] ReiserFS inode initialization
        This patch is to fix a case where flag was not set at inode-read time which
        prevented 32bit uid/gid to work correctly.

<reiser@namesys.com> (02/04/10 1.467)
        [PATCH] fix ReiserFS metadata journalling
        This patch is to add forgotten metadata journaling for a case when
        we free blocks after tail conversion failures. Found and fixed by Chris Mason

<reiser@namesys.com> (02/04/10 1.468)
        [PATCH] fix ReiserFS journal initialization
        This patch solves a problem where separate journal device was not freed
        if journal initialisation failed

<reiser@namesys.com> (02/04/10 1.469)
        [PATCH] ReiserFS journal replay
        This patch is to fix journal replay bug where old code would replay
        transactions with mount_id != mount_id recorded in journal header.
        Fixed by Chris Mason.

<reiser@namesys.com> (02/04/10 1.470)
        [PATCH] ReiserFS debug config rename
        This patch renames reiserfs debugging option in config output,
        to make its meaning more clear.

<reiser@namesys.com> (02/04/10 1.471)
        [PATCH] ReiserFS config comment clarification
        This patch is to change comment of CONFIG_REISERFS_PROC_INFO config item,
        to make it more clear.

<reiser@namesys.com> (02/04/10 1.472)
        [PATCH] ReiserFS unconfuse
        This patch removes confusing warning about journal replay on readonly FS

<reiser@namesys.com> (02/04/10 1.473)
        [PATCH] ReiserFS makefile cleanup
        This patch removes one tail_conversion object out of build list,
        because it was specified twice. (noticed by Jeff Garzik)

<reiser@namesys.com> (02/04/10 1.474)
        [PATCH] ReiserFS inode cleanup
         This patch fixes a problem that was created during inode structure
         cleanup/ private parts separation. This fix was made by Chris Mason.
         This is very critical bugfix. Without it, filesystem corruption
         happens on savelinks processing and possibly in some other cases.

<reiser@namesys.com> (02/04/10 1.475)
        [PATCH] ReiserFS typo fix
         This patch fixes small typo in ikernel informational message.

<torvalds@linux.local> (02/04/10 1.481)
        Don't just initialize the acpi tables, use them.

<torvalds@home.transmeta.com> (02/04/11 1.482)
        Don't stomp on old ia_valid when changing user/group.
        Found by Andrew Morton <akpm@zip.com.au>

<viro@math.psu.edu> (02/04/11 1.483)
        [PATCH] crapectomy in include/linux/nfsd/syscall.h
        Removes an atavism in declaration of sys_nfsservctl() - sorry, I should've
        remove that junk when cond_syscall() thing was done.

<torvalds@penguin.transmeta.com> (02/04/12 1.484)
        Update defconfig for IDE TCQ configs

<jes@wildopensource.com> (02/04/12 1.485)
        [PATCH] qla1280.c update
        Included is the latest version of the code. Indenting it properly
        actually reduced the size of the files by another 10K or so.

<torvalds@penguin.transmeta.com> (02/04/12 1.486)
        Kernel version update

<dalecki@evision-ventures.com> (02/04/12 1.487)
        [PATCH] 2.5.8-pre3 IDE 32
        - Don't provide symbolic links in /proc/ide - they are redundant data.
        - Try to use a more reasonable default capacity value in ata_capacity().
        - Fix ata_put() ata_get() usage in ide_check_media_change().
        - Small readability fixes to the option parsing code.
        - Apply Vojtech Pavliks /proc PIIX output fix.
        - Replace all occurrences of ide_wait_taskfile() with ide_raw_taskfile().  One
           duplicated code path fewer.

<dalecki@evision-ventures.com> (02/04/14 1.488)
        [PATCH] 2.5.8-pre3 IDE 33
        - Kill unneded parameters to ide_cmd_ioctl() and ide_task_ioctl().
        - Apply Petr Vendrovecs fix for 32bit ver 16bit transfers.
        - Make CD-ROM usable again by guarding the generic routines against request
           field abuse found there. We will try to convert this driver to the just to be
           finished struct ata_request after the generic changes stabilize a bit.
           The strcut ata_taskfile and struct ata_request merge to be more preciese.

<jes@wildopensource.com> (02/04/14 1.489)
        [PATCH] cpqfc.o
        This makes the cpqfc driver recognize the HP Tachyon.  I moved the
        device list to an __initdata structure so the driver doesn't build it at
        runtime and changed it to use the proper PCI_DEVICE_ID_* names. 
        With this patch applied, the driver happily detects the disks attached
        to my HP Tachyon.

Summary of changes from v2.5.8-pre2 to v2.5.8-pre3

<anton@superego.ozlabs.ibm.com> (02/02/20 1.370)
        rework kernel stack usage
        remove old ioctls

<anton@samba.org> (02/02/21 1.372)
        ppc64: update for pte in highmem changes

<anton@samba.org> (02/03/11 1.375)
        ppc64: remove high2lowuid.
        ppc64: remove schedule() after set_cpus_allowed()

<anton@samba.org> (02/03/11 1.376)
        ppc64: remove task migration IPI, add xmon IPI

<anton@samba.org> (02/03/11 1.377)
        ppc64: remove per cpu rtas lock for the moment

<anton@samba.org> (02/03/11 1.379)
        ppc64: add SI_DETHREAD

<anton@samba.org> (02/03/11 1.380)
        ppc64: add per cpu section

<anton@samba.org> (02/03/11 1.381)
        ppc64: add large page bit, use lwsync instead of eieio for spinlock

<anton@samba.org> (02/03/11 1.382)
        ppc64: stage 1 of hash_page/flush_hash_page rewrite - only random

<anton@samba.org> (02/03/11 1.383)
        ppc64: hash_page/flush_hash_page rewrite: no need to check for
        hpte in all slots any more.

<anton@samba.org> (02/03/11 1.384)
        ppc64: hash_page/flush_hash_page rewrite: reformatting

<anton@samba.org> (02/03/12 1.385)
        ppc64: remove old debug code

<anton@samba.org> (02/03/12 1.386)
        ppc64: dont need the hash table lock to check linux pte flags, also ptep is never
        NULL now.

<anton@samba.org> (02/03/12 1.387)
        ppc64: move permissions check outside of hash table lock

<anton@samba.org> (02/03/12 1.388)
        ppc64: remove code to check all slots for a hpte, we always insert this information
        into the linux pte

<anton@samba.org> (02/03/12 1.389)
        ppc64: hash_page whitespace and comment changes

<anton@samba.org> (02/03/15 1.393)
        ppc64: updates for 2.5.7-pre1 - futexes, 

<anton@samba.org> (02/03/16 1.395)
        ppc64: Alignment handler fixes - from Mike Corrigan

<anton@samba.org> (02/03/16 1.396)
        ppc64: Add halt option to xmon, from Peter Bergner

<anton@samba.org> (02/03/16 1.397)
        ppc64: Add input layer and fix for old yaboot.

<anton@samba.org> (02/03/16 1.398)
        ppc64: rework idle loop, separate iSeries and pSeries

<anton@samba.org> (02/03/16 1.399)
        ppc64: Add RTAS NVRAM driver, from Todd Inglett

<anton@samba.org> (02/03/16 1.400)
        ppc64: remove old pmac NVRAM code

<anton@samba.org> (02/03/16 1.401)
        ppc64: xics fix from Don Reed

<anton@samba.org> (02/03/16 1.402)
        rework ISA bridge probe and use, from Todd Inglett

<anton@samba.org> (02/03/16 1.404)
        ppc64: updates for 2.5.7-pre2

<anton@samba.org> (02/03/25 1.407)
        ppc64: remove -fno-builtin from Makefile and add -mtraceback=full to
        enable traceback tables on new gcc

<anton@samba.org> (02/03/25 1.408)
        ppc64: Allocate the first segment separately

<anton@samba.org> (02/03/25 1.409)
        ppc64: cacheline align each XICS IPI bitmask.

<anton@samba.org> (02/03/25 1.410)
        ppc64 power4 SLB optimisations:
        set the class bit for kernel segments.
        preload all 16 segments for 32 bit tasks, pc and sp segments for
        64 bit tasks.
        add commented out code to only invalidate 16 user segments for
        32 bit tasks, we need to pass in the previous task to use this.

<anton@samba.org> (02/03/25 1.411)
        ppc64: add non context synchronising version of mtmsrd

<anton@samba.org> (02/03/25 1.412)
        ppc64: increase LMB regions

<anton@samba.org> (02/03/25 1.413)
        ppc64: missed modifications for power4 SLB optimisations

<anton@samba.org> (02/03/25 1.414)
        ppc64: thread.pgdir not required any more

<anton@samba.org> (02/03/25 1.415)
        ppc64: hashtable management rework for SMP scalability

        get rid of global lock on hpte insert and remove, use a software bit
         for pSeries and the relevant interfaces for pSeries LPAR to avoid
        preload hpte entries in update_mmu_cache.
        keep cpu_vm_mask and use tlbiel when mm has only run locally
        batch tlb flushes where possible.
        add large page support in preparation for generic large page support.
        Remove HPTENOIX, we always put slot information into linux ptes now.
        Note: pSeries and pSeries LPAR so far, iSeries coming next.

<anton@samba.org> (02/03/25 1.416)
        ppc64: remove warnings

<anton@samba.org> (02/03/25 1.417)
        ppc64: LMB fixes from Peter Bergner

<anton@samba.org> (02/03/26 1.418)
        ppc64: iSeries updates from iSeries team
        ppc64: time updates from Mike Corrigan
        ppc64: add flush_hash_range for pSeries LPAR
        ppc64: align syscall tables to 8 bytes

<anton@samba.org> (02/03/28 1.419)
        ppc64: pSeries LPAR updates - add hpte_remove

<trini@opus.bloom.county> (02/03/28 1.369.82.1)
        Fix spacing in arch/ppc/config.in

<trini@opus.bloom.county> (02/03/28 1.369.82.2)
        Add more help texts.

<trini@opus.bloom.county> (02/03/29 1.369.82.3)
        Fix exporting of consistent_{alloc,free,sync} on PPC8xx/4xx.

<trini@opus.bloom.county> (02/03/29 1.369.82.4)
        Change p_pptr to parent in arch/ppc/kernel/signal.c

<torvalds@penguin.transmeta.com> (02/04/05 1.369.1.215)
        Cset exclude: davej@suse.de|ChangeSet|20020404222348|23820

<akpm@zip.com.au> (02/04/05 1.369.1.216)
        [PATCH] loop deadlock fix
        This chunk is present in 2.4, missing in 2.5.  It
        stops the loop thread from waiting on its owm buffers.

<agrover@dexter.groveronline.com> (02/04/06 1.369.1.217)
        ACPI interpreter update.
        add support for GPE fields to be in any address space, not just IO.
        comment and debug print cleanups

<agrover@dexter.groveronline.com> (02/04/06 1.369.1.218)
        ACPI driver updates
        Better IRQ routing
        ACPI 2.0-enumerated processor perf state support
        ACPI poweroff via magic sysrq

<agrover@dexter.groveronline.com> (02/04/06 1.369.1.219)
        MADT parsing improvements (Paul D & Richard Schaal)
        ACPI PCI IRQ improvements (Dominik Brodowski and Paul D)
        Wakeup fix (Pavel Machek)

<torvalds@home.transmeta.com> (02/04/06 1.369.103.1)
        Update for new notify_change semantics

<akpm@zip.com.au> (02/04/06 1.369.103.2)
        [PATCH] ->setattr() locking changes
        ext3 was missed - the removal of the BKL in notify_change
        means that the filesytem fails quite quickly on SMP in -pre2.
        Sorry, I should have spotted that when the patch floated past.

<bcollins@debian.org> (02/04/06 1.369.103.3)
        [PATCH] IEEE-1394 Updates
        ieee1394 updates:
          - New drivers: eth1394, admtp
          - nodemgr cleanup
          - Fixes for ohci
          - fixed for node probes
          - small misc performance fixes
          - New /proc interface for subsystem, node listing, and dv1394

<viro@math.psu.edu> (02/04/06 1.369.104.1)
        [PATCH] ->setattr() locking changes
        Take ->i_sem in all callers of notify_change().

<david-b@pacbell.net> (02/04/06 1.369.105.1)
        USB usbnet driver update
            - adds ethtool support (based on code from Brad Hards)
            - makes diagnostic level configurable (ethtool, module param)
            - fixes a minor mem_flags goof (thanks Oliver!)
            - device identifers now use devpath (stable ID) not devnum

<greg@kroah.com> (02/04/06 1.369.105.2)
        spilt up the Config.help file into smaller pieces

<anton@samba.org> (02/04/08 1.422)
        ppc64: update include/asm-ppc64/linux_logo.h

<anton@samba.org> (02/04/08 1.423)
        ppc64: add preempt_count

<anton@samba.org> (02/04/08 1.424)
        ppc64: Change MASK -> __MASK to avoid namespace clash in symbios
        driver and fix up thread_saved_pc

<anton@samba.org> (02/04/08 1.425)
        ppc64: Fix up warning

<anton@samba.org> (02/04/08 1.426)
        ppc64: fix up some warnings

<anton@samba.org> (02/04/08 1.427)
        ppc64: Fix up clash with flags variable in udbg.c

<anton@samba.org> (02/04/08 1.428)
        ppc64: fix up warnings in lmb.c

<anton@samba.org> (02/04/08 1.429)
        ppc64: add missing include in semaphore.c

<anton@samba.org> (02/04/08 1.430)
        ppc64: Fix up some warnings in the pagetable allocation code

<anton@samba.org> (02/04/08 1.431)
        ppc64: pmd_page fixes to match pagetable allocation changes

<anton@samba.org> (02/04/08 1.432)
        ppc64: get rid of cacheable_memzero

<anton@samba.org> (02/04/08 1.433)
        ppc64: remove strtok

<anton@samba.org> (02/04/08 1.434)
        ppc64: remove bcopy and cacheable_memcpy

<anton@samba.org> (02/04/08 1.435)
        ppc64: remove unnecessary .text directive

<anton@samba.org> (02/04/08 1.436)
        ppc64: fix warning in rtasd.c

<anton@samba.org> (02/04/08 1.437)
        ppc64: create cacheflush.h and tlbflush.h
        ppc64: remove local_flush_* functions, just define them directly

<paulus@nanango.paulus.ozlabs.org> (02/04/08 1.369.106.2)
        PPC update; create cacheflush.h and tlbflush.h and define default_idle

<anton@samba.org> (02/04/08 1.369.107.1)
        Make cond_syscall per arch. This is required on some architectures
        (eg ppc64) where foo points to a function descriptor and .foo is
        the address of the actual function.

<anton@samba.org> (02/04/08 1.438)
        replace flush_tlb_all with flush_tlb_kernel_range which allows
        optimisations on some architectures.

<johannes@erdfelt.com> (02/04/08 1.369.105.3)
        [PATCH] uhci.c SMP deadlock
        This patch fixes a bug reported by Greg and David, as well as some other
        people recently.
        uhci.c would call wait_ms, which can sleep, with spinlocks held. There
        are two places where this happens, but only one was the cause of the

<johannes@erdfelt.com> (02/04/08 1.369.105.4)
        [PATCH] uhci.c cleanup
        This patch merely cleans up the code a little and doesn't fix any bugs.
        It makes a couple of code paths a bit easier to understand, removes an
        unused variable (uhci_list) and some procfs variables when not using

<johannes@erdfelt.com> (02/04/08 1.369.105.5)
        [PATCH] uhci.c incorrect locking
        This fixes a problem that I've not run into and is difficult to trigger,
        but definately a bug. We locked urb->lock, when we meant u->lock. It also
        cleans up the code a little to make it easier to understand and removes
        an obsolete comment.

<johannes@erdfelt.com> (02/04/08 1.369.105.6)
        [PATCH] uhci.c FSBR speed problem
        The dangers of not ensuring important fields are properly set.
        Some, if not all, of the speed problems with uhci.c were caused because
        some important fields were not set and as a result, FSBR was never
        turned on.
        This patch also ensures is_suspended is set to 0 properly. This could
        cause some problems suspending the HC when no devices are plugged in.

<greg@kroah.com> (02/04/08 1.369.105.7)
        changed direct access of current->state to set_current_state() call.
        Thanks to Paul Komkoff for reminding me of this.

<agrover@groveronline.com> (02/04/08 1.369.1.221)
        [PATCH] ACPI compile fix
        Hi Linus,
        Oops, SMP non-ACPI doesn't compile with the previous ACPI update. This
        fixes that.

<axboe@suse.de> (02/04/08 1.369.1.222)
        [PATCH] disable high mem on pio, ide
        ide-dma incorrectly only clears high memory support if the verbose dma
        disabling is called, it should clear it for the non-verbose too.

<cph@zurich.ai.mit.edu> (02/04/08 1.369.105.8)
        [PATCH] page limit on bulk transfers in usbfs?
        Here is an updated patch using kmalloc that removes the page limit
        on bulk transfers in usbfs.  I've tested it and it seems to work OK.

<ddstreet@us.ibm.com> (02/04/08 1.369.105.9)
        [PATCH] usbfs disconnect
        This was originally created by David many months ago and posted to the
        list, but not put into the kernel.
        I modified the original patch to:
        -patch against the 2.5.7 kernel
        -use the 'real' interface number, not position (to do this I added 2
         methods in usb.c)

<greg@kroah.com> (02/04/08 1.369.105.10)
        USB bluetooth tty driver
        renamed the bluetooth.c file to bluettty.c to help prevent user confusion
        between this driver and the bluez bluetooth stack in the kernel.

<anton@samba.org> (02/04/08 1.441)
        [PATCH] missing includes in seq_file.h
        include/linux/seq_file.h uses memcpy and struct semaphore and so should
        include the relevant files.

<anton@samba.org> (02/04/08 1.442)
        [PATCH] fix busy loop in migration thread init
        Since we do not set the task state to TASK_INTERRUPTIBLE, we busy loop.
        On larger SMP this can actually result in a lockup due to the way
        migration thread initalisation is done (nr_cpus threads are created
        and they all busy loop until the scheduler evenly distributes them,
        one on each cpu. With this rogue thread busy looping things can become
        unbalanced and the migration threads never distribute themselves onto
        all cpus).

<anton@samba.org> (02/04/08 1.443)
        [PATCH] missing include in fs/nfsd/nfsctl.c
        We forgot to include linux/init.h in fs/nfsd/nfsctl.c.

<anton@samba.org> (02/04/08 1.444)
        [PATCH] increase dynamic proc entries for ppc64
        Unfortunately the proc filesystem has a limit on the number of dynamic
        proc entries it can create. On large systems we can exhaust the default
        (4096) very quickly. The following patch increases the default to
        something more reasonable.

<Andries.Brouwer@cwi.nl> (02/04/08 1.445)
        [PATCH] size_in_bytes
        It is a step on the road to removal of the arrays.
        It also solves other things, like the fact that Linux
        is unable to read the last sector of a disk or partition
        with an odd number of sectors.

<bgerst@didntduck.org> (02/04/08 1.446)
        [PATCH] Clean up x86 interrupt entry code
        This patch moves the generation of the asm interrupt entry stubs from
        i8259.c to entry.S.  This allows it to be done with less code and
        without needing duplicate definitions of SAVE_ALL, GET_CURRENT, etc.

<rgooch@ras.ucalgary.ca> (02/04/08 1.447)
        [PATCH] devfs patch for 2.5.8-pre2
        - Documentation updates
        - BKL removal (devfs doesn't need the BKL)
        - Changed <devfs_rmdir> to allow later additions if not yet empty
        - Added calls to <devfs_register_partitions> in drivers/block/blkpc.c
          <add_partition> and <del_partition>
        - Bug fixes in unique number and devnum allocators.

<david-b@pacbell.net> (02/04/08 1.369.105.11)
        USB kerneldoc fixes
        This fixes some kerneldoc bugs for USB.  It catches up with
        the recent rename, and includes a couple minor tweaks/fixes
        I happened to notice.

<david-b@pacbell.net> (02/04/08 1.369.105.12)
        This patch is a more complete fix for the device refcount
        sanity checking and cleanup on device disconnect.
            - Splits apart usb_dec_dev_use(), for driver use, and
              usb_free_dev(), for hub/hcd use.  Both now have
              kerneldoc, and will BUG() if the refcount and the
              device tree get out of sync.  (Except for cleanup of
              root hub init errors, refcount must go to zero only
              at the instant disconnect processing completes.)
            - More usbcore-internal function declarations are
              now moved out of <linux/usb.h> into hcd.h
            - Driver-accessible refcounting is now inlined; minor
              code shrinkage, it's using atomic inc/dec instructions
              not function calls.
        <note from greg k-h, there is still some work to be done with USB device
         reference counting, but this patch is a step in the right direction.>

<greg@kroah.com> (02/04/08 1.369.105.13)
        cleaned up the comments to put them in proper docbook format.

<dalecki@evision-ventures.com> (02/04/09 1.449)
        [PATCH] 2.5.8-pre2 IDE 29b
        - Eliminate the mate member of the ata_channel structure. The information
           provided by it is already present. This patch may have undesirable
           effects on the ns87415.c and trm290.c host chip drivers, but it's worth
           for structural reasons to have it.
        - Kill unused code, which was "fixing" interrupt routing from ide-pci.c Don't
           pass any "mate" between the functions there.
        - Don't define SUPPORT_VLB_SYNC unconditionally in ide-taskfile.c
        - Apply Vojtech Pavliks fix for piix host-chip driver crashes.
        - Add linux/types.h to ide-pnp.c.
        - Apply latest sis5513 host chip driver patch from by Lionel Bouton by hand.
        - Apply patch by Paul Macerras for power-mac.
        - Try to make the ns87415 driver a bit more reentrant.

<wim@iguana.be> (02/04/09 1.447.1.1)
        [PATCH] 2.5.8-pre2 i8xx series chipsets patches

        i810_rng: add support for other i8xx chipsets to the Random Number Generator module.
        This is being done by adding the detection of the 82801BA(M) and 82801CA(M) I/O Controller Hub's.

<torvalds@penguin.transmeta.com> (02/04/09 1.451)
        update x86 defconfig for USB changes

<torvalds@penguin.transmeta.com> (02/04/09 1.452)
        [PATCH] set-bit cleanup I: x86_capability.
        Cosmetic change: x86_capability.  Makes it an unsigned long, and
        removes the gratuitous & operators (it is already an array).  These
        produce warnings when set_bit() etc. takes an unsigned long * instead
        of a void *.
        Originally from Rusty Russell

<rusty@rustcorp.com.au> (02/04/09 1.453)
        [PATCH] per-cpu cleanup
        As per David Mosberger's request, splits into per-arch files (solves the
        #include mess), and fixes my "was not an lvalue" bug.

<viro@math.psu.edu> (02/04/09 1.454)
        [PATCH] open_namei cleanup, nfsctl permission check fix
                a) part of open_namei() done after we'd found vfsmount/dentry of
        the object we want to open had been split into a helper - may_open().
                b) do_open() in fs/nfsctl.c didn't do any permission checks on
        the nfsd file it was opening - sudden idiocy attack on my part (I missed
        the fact that dentry_open() doesn't do permission checks - open_namei()
        does).  Fixed by adding obvious may_open() calls.

<torvalds@home.transmeta.com> (02/04/09 1.455)
        Update kernel version

<rml@tech9.net> (02/04/09 1.456)
        [PATCH] cpu affinity syscalls
        This patch implements the following calls to set and retrieve a task's
        CPU affinity:
            int sched_setaffinity(pid_t pid, unsigned int len,
                                              unsigned long *new_mask_ptr)
            int ched_getaffinity(pid_t pid, unsigned int len,
                                              unsigned long *user_mask_ptr)

Summary of changes from v2.5.8-pre1 to v2.5.8-pre2

<ch@hpl.hp.com> (02/03/13 1.369.58.1)
        [PATCH] 1054/1: Fixes security problem with static i/o mapping.
        For 2.5.x only.  (Patch 1042/1 is for 2.4.x)
        (replaces patch 1041/1.)
        Christopher Hoover

<trevor.pering@intel.com> (02/03/13 1.369.58.2)
        [PATCH] 964/1: Consus led patches
        +++ linux/arch/arm/mach-sa1100/leds.c   Wed Feb 13 13:55:33 2002
        +++ linux/arch/arm/mach-sa1100/leds.h   Wed Feb 13 13:55:52 2002
        +++ linux/include/asm-arm/leds.h        Wed Feb 13 13:01:31 2002
        Additions for consus_leds_event (parallels assabet_leds_event).
        Added led_start_time_mode and led_stop_timer_mode for heartbeat led.
        Added led_blue_on and led_blue_off for Blue led support.

<rmk@flint.arm.linux.org.uk> (02/03/13 1.369.54.2)
        Miscellaneous compiler warning fixes, other small fixes and
        cleanups for ARM.

<rmk@flint.arm.linux.org.uk> (02/03/13 1.369.54.4)
        Fix scope of init/exit functions in ds1620.c
        NetWinder flash driver should use ioremap, not the private __ioremap.

<rmk@flint.arm.linux.org.uk> (02/03/13 1.369.54.5)
        Update ARM related video drivers:
         - cyber2000fb
         - sa1100fb
        Add new ARM video drivers:
         - anakinfb
         - clps711xfb

<rmk@flint.arm.linux.org.uk> (02/03/17 1.369.1.157)
        SA1100 IrDA driver updates.

<rmk@flint.arm.linux.org.uk> (02/03/19 1.369.1.159)
        Convert ARM92x/ARM1020 specific configuration symbols to generic CPU
        symbols.  Remove unused flush_page_to_ram in ARM code.

<nico@cam.org> (02/03/22 1.369.58.3)
        [PATCH] 1079/1: recognize PXA250 revision B0 and hier

<nico@cam.org> (02/03/22 1.369.58.4)
        [PATCH] 1080/1: Addition of new files for the Intel PXA250/210 architecture
        This only populates the linux/arch/arm/mach-pxa directory.

<nico@cam.org> (02/03/22 1.369.58.5)
        [PATCH] 1081/1: addition of new header files for the Intel PXA250/210 architecture
        This patch populates the linux/include/asm-arm/arch-pxa directory.

<nico@cam.org> (02/03/22 1.369.58.6)
        [PATCH] 1082/1: changes to linux/arch/arm/kernel/* for PXA architecture
        Actually only debug.S and entry-armv.S

<abraham@2d3d.co.za> (02/03/22 1.369.58.7)
        [PATCH] 1083/1: 64-bit unsigned modulo arithmetic support
        I've added support for 64-bit modulo arithmetic on ARM. This is needed for
        the video4linux API to function properly and since there's already support
        for 64-bit divides, I think there shouldn't be any reason for the absence of

<xkaspa06@stud.fee.vutbr.cz> (02/03/23 1.369.58.8)
        [PATCH] 1092/1: Avoid unbalanced IRQ from LCD on SA1100
        Remove "enable_irq(IRQ_LCD)" call from video/sa1100fb.c

<gilbertd@treblig.org> (02/03/24 1.369.58.9)
        [PATCH] 1094/1: 2.4.18-rmk3: fix for build failure with no video
        2.4.18-rmk3 fails to build on the EBSA285 if there is no video stuff
        enabled with a missing symbol.  For me the linker lied and told me it
        was in irq.c but it was actually in the previous file in the link,
        mach-footbridge/arch.c ; the symbol is screen_info which is what the
        ORIG_* macros use.
        Note I haven't yet tested this booting, just building.

<rmk@flint.arm.linux.org.uk> (02/03/24 1.369.1.160)
        Miscellaneous build corrections/warning fixes.

<rth@are.twiddle.net> (02/03/25 1.369.80.1)
        Break an include loop by moving cache flushing routines from
        asm/pgtable.h and/or asm/pgalloc.h to asm/cacheflush.h, and
        tlb flushing routines to asm/tlbflush.h.

<mochel@segfault.osdl.org> (02/03/26 1.369.81.1)
        Add concept of system bus, so system devices (CPUs, PICs, etc) can have a common home in the device tree.
        Add helper functions for {un,}registering.

<mochel@segfault.osdl.org> (02/03/26 1.369.81.2)
        Ok, really add drivers/base/sys.c

<mochel@segfault.osdl.org> (02/03/26 1.369.81.3)
        Driver model update:
        Create global list in which all devices are inserted. Done by Kai Germaschewski.

<mochel@segfault.osdl.org> (02/03/26 1.369.81.4)
        Add device_{suspend,resume,shutdown} calls.

<rmk@flint.arm.linux.org.uk> (02/03/28 1.369.1.162)
        Miscellaneous build/bug fixes.

<kai@tp1.ruhr-uni-bochum.de> (02/04/01 1.369.83.1)
        Fix the kernel build when we have multi-part objects both in $(obj-y)
        and $(obj-m).
        Before, we would have built (though not linked) the individual objects
        for multi-part modules even when building vmlinux and vice versa.

<davem@nuts.ninka.net> (02/04/03 1.369.76.39)
        Tigon3 driver pci_unmap_foo changes were half complete,
        fix things up. Noted by Jeff Garzik.

<davem@nuts.ninka.net> (02/04/03 1.369.91.1)
        kernel/time.c needs linux/errno.h

<davem@nuts.ninka.net> (02/04/03 1.369.91.2)
        drivers/usb/hub.c needs linux/errno.h

<davem@nuts.ninka.net> (02/04/03 1.369.91.3)
        drivers/media/video/videodev.c needs linux/slab.h

<davem@nuts.ninka.net> (02/04/03 1.369.92.1)
        sparc64/kernel/semaphore.c needs errno.h
        add forward decl of struct page to asm-sparc64/pgtable.h

<davem@nuts.ninka.net> (02/04/03 1.369.92.2)
        sparc64/kernel/binfmt_elf32.c:ELF_CORE_COPY_REGS needs
        final semi-colon.

<davem@nuts.ninka.net> (02/04/03 1.369.92.3)
        sparc64/math-emu/math.c needs linux/errno.h

<jgarzik@mandrakesoft.com> (02/04/03 1.369.93.1)
        Update pcnet_cs net driver for recent removal of rmem_{start,end}
        from struct net_device.  (actually, for this driver, the functionality
        was simply moved to 8390.h)

<jgarzik@mandrakesoft.com> (02/04/04 1.369.95.2)
        Remove unused references to dev->rmem_{start,end}
        from wavelan_cs net driver.

<davej@suse.de> (02/04/04 1.369.95.3)
        olympic tokenring driver compile fix

<davej@suse.de> (02/04/04 1.369.95.4)
        Add missing MODULE_LICENSE tags to several net drivers.
        Also... surprise!  Andrew Morton's aic7xxx build fix
        is also included.  Ah well, 1001 people probably applied
        the same patch by hand, and it's easy to merge, so oh well.

<davej@suse.de> (02/04/04 1.369.95.5)
        Merge ioc3-eth net drvr changes from 2.4.x:
        - Improved MAC address discovery.
        - endian fixes

<davej@suse.de> (02/04/04 1.369.95.6)
        Merge gt96100 mips net drvr updates from 2.4.x:
        * Moved to 2.4.14, ppopov@mvista.com.  Modified driver to add
        proper gt96100A support.
        * Moved eth port 0 to irq 3 (mapped to GT_SERINT0 on EV96100A)
        in order for both ports to work. Also cleaned up boot
        option support (mac address string parsing), fleshed out
        gt96100_cleanup_module(), and other general code cleanups

<davej@suse.de> (02/04/04 1.369.95.7)
        Merge au1000_eth net drvr updates from 2.4.x:
        * add support for LSI 10/100 phy
        * other minor cleanups

<davej@suse.de> (02/04/04 1.369.95.8)
        com20020 arcnet drvr build fix (add missing comma)

<davej@suse.de> (02/04/04 1.369.95.9)
        Merge ariadne2 net drvr updates from 2.4.x:
        * use Zorro-specific z_{read,write}[bwl] routines
        * remove superfluous include

<davej@suse.de> (02/04/04 1.369.95.10)
        Merge a2065 net drvr update from 2.4.x:
        * make sure to stop chip before enabling interrupt via request_irq

<jt@hpl.hp.com> (02/04/04 1.369.96.1)
        IrDA: Fix w83977af_ir FIR drivers for new DMA API

<jt@hpl.hp.com> (02/04/04 1.369.96.2)
        IrDA trivial fixes:
        o [CORRECT] Handle signals while IrSock is blocked on Tx
        o [CORRECT] Fix race condition in LAP when receiving with pf bit
        o [CRITICA] Prevent queuing Tx data before IrComm is ready
        o [FEATURE] Warn user of common misuse of IrLPT

<jt@hpl.hp.com> (02/04/04 1.369.96.3)
        IrDA:  Allow tuning of Max Tx MTU to workaround spec contradiction

<jt@hpl.hp.com> (02/04/04 1.369.96.4)
        IrDA: Correct fix for IrNET disconnect indication :
        if socket is not connected, don't hangup, to allow passive operation

<jt@hpl.hp.com> (02/04/04 1.369.96.5)
        IrDA discovery fixes:
        o [FEATURE] Propagate mode of discovery to higher protocols
        o [CORRECT] Disable passive discovery in ircomm and irlan
          Prevent client and server to simultaneously connect to each other
        o [CORRECT] Force expiry of discovery log on LAP disconnect

<jt@hpl.hp.com> (02/04/04 1.369.96.6)
        IrDA USB disconnect changes:
        o [CRITICA] Fix race condition between disconnect and the rest
        o [CRITICA] Force synchronous unlink of URBs in disconnect
        o [CRITICA] Cleanup instance if disconnect before close
                <Following patch from Martin Diehl>
        o [CRITICA] Call usb_submit_urb() with GPF_ATOMIC

<jt@hpl.hp.com> (02/04/04 1.369.96.7)
        IrDA: handle new NSC chip variant

<jt@hpl.hp.com> (02/04/04 1.369.96.8)
        IrDA: Correct location of dev tx stats update

<davej@suse.de> (02/04/04 1.369.95.11)
        Merge hydra net drvr conversion to Zorro-specific
        z_{read,write}[bwl] routines from 2.4.x.

<akpm@zip.com.au> (02/04/04 1.369.97.1)
        This fixes the "i_blocks went wrong when the disk filled up"
        In ext3_new_block() we increment i_blocks early, so the
        quota operation can be performed outside lock_super().
        But if the block allocation ends up failing, we forget to
        undo the allocation.  
        This is not a serious bug, and probably does not warrant
        an upgrade for production machines.  Its effects are:
        1) errors are generated from e2fsck and
        2) users could appear to be over quota when they really aren't.
        The patch undoes the accounting operation if the allocation
        ends up failing.

<arjanv@redhat.com> (02/04/04 1.369.95.12)
        Merge some new PCI ids from e100 to eepro100 net driver.

<akpm@zip.com.au> (02/04/04 1.369.95.13)
        Various minor bug fixes for 3c59x net driver.

<alan@lxorguk.ukuu.org.uk> (02/04/04 1.369.95.14)
        Fix jiffies-comparison timeout bug in arlan net driver.

<jgarzik@mandrakesoft.com> (02/04/04 1.369.97.2)
        Andrew Morton's ext2 sync mount speedup.  Description:
        At present, when mounted synchronously or with `chattr +S' in effect,
        ext2 syncs the indirect blocks for every new block when extending a
        This is not necessary, because a sync is performed on the way out of
        generic_file_write().  This will pick up all necessary data from
        inode->i_dirty_buffers and inode->i_dirty_data_buffers, and is
        The patch removes all the syncing of indirect blocks.
        On a non-write-caching scsi disk, an untar of the util-linux tarball
        runs three times faster.  Writing a 100 megabyte file in one megabyte
        chunks speeds up ten times.
        The patch also removes the intermediate indirect block syncing on the
        truncate() path.  Instead, we sync the indirects at a single place, via
        inode->i_dirty_buffers.  This not only means that the writes (may)
        cluster better.  It means that we perform much, much less actual I/O
        during truncate, because most or all of the indirects will no longer be
        needed for the file, and will be invalidated.
        fsync() and msync() still work correctly.  One side effect of this
        patch is that VM-initiated writepage() against a file hole will no
        longer block on writeout of indirect blocks.  This is good.

<akpm@zip.com.au> (02/04/04 1.369.97.3)
        ext3 filesystem sync mount speedup:
        Again, we don't need to sync indirects as we dirty them because
        we run a commit if IS_SYNC(inode) prior to returning to the
        caller of write(2).
        Writing a 10 meg file in 0.1 meg chunks is sped up by, err,
        a factor of fifty.  That's a best case.

<eli.kupermann@intel.com> (02/04/04 1.369.95.15)
        e100 net driver update 1/3:
        The patch separates max busy wait constants making in max of 100 usec for
        wait scb and max of 50 usec for wait cus idle. These constants found
        sufficient using heavy traffic tests.

<eli.kupermann@intel.com> (02/04/04 1.369.95.16)
        e100 net driver update 2/3:
        Adding missing pci write flush to the procedure e100_exec_cmd

<eli.kupermann@intel.com> (02/04/04 1.369.95.17)
        e100 net driver update 3/3:
        Adding proper print level qualifier to the printk calls.

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.1)
        Detect bad JFS directory to avoid infinite loop

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.2)
        JFS include cleanup
        Remove redundant include of slab.h
        Submitted by Christoph Hellwig

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.3)
        JFS: remove dead code
        Submitted by Christoph Hellwig

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.4)
        Add support for external JFS journal
        Submitted by Christoph Hellwig & Dave Kleikamp

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.5)
        JFS: simplify sync_metapage
        Submitted by Christoph Hellwig

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.6)
        Remove register keyword from JFS code
        Submitted by Christoph Hellwig

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.7)
        No need to handle regular files in jfs_mknod
        Submitted by Christoph Hellwig

<shaggy@kleikamp.austin.ibm.com> (02/04/04 1.369.99.8)
        Make JFS licence boilerplate uniform, update copyright dates
        Submitted by Christoph Hellwig and Dave Kleikamp

<torvalds@penguin.transmeta.com> (02/04/04 1.369.100.1)
        Don't allow preemption to change task state.

<rml@tech9.net> (02/04/04 1.369.100.2)
        [PATCH] kjournald exits with nonzero preempt_count
        The preempt_count debug check that went into 2.5.8-pre1 already caught a
        simple case in kjournald.  Specifically, kjournald does not drop the BKL
        when it exits as it knows schedule will do so for it.
        For the sake of clarity and exiting with a preempt_count of zero, the
        attached patch explicitly calls unlock_kernel when kjournald is exiting.

<torvalds@penguin.transmeta.com> (02/04/04 1.369.100.4)
        Fix up bad time compare from the -dj merge

<torvalds@penguin.transmeta.com> (02/04/04 1.369.1.165)
        Cset exclude: davej@suse.de|ChangeSet|20020403195622

<ak@muc.de> (02/04/04 1.369.76.40)
        In linux/skbuff.h, always use unsigned long for flags.

<davem@nuts.ninka.net> (02/04/04 1.369.92.4)
        On sparc64, flush_thread needs to setup the PGD cache
        for 64-bit apps too.

<greg@kroah.com> (02/04/04 1.369.101.1)
        USB visor driver
        Added support for the Sony OS 4.1 devices.  Thanks to Hiroyuki ARAKI
        <hiro@zob.ne.jp> for the information.

<torvalds@penguin.transmeta.com> (02/04/04 1.369.1.166)
        Update kernel version

<davej@suse.de> (02/04/04 1.369.1.167)
        [PATCH] cleanup list usage in dquot
        From the kernel janitor folks

<davej@suse.de> (02/04/04 1.369.1.168)
        [PATCH] list_for_each is fs/
        From the kernel janitor folks

<davej@suse.de> (02/04/04 1.369.1.169)
        [PATCH] Improved allocator for NTFS
        Originally by Anton Altaparmakov.
        I think Anton is going to submit his rewritten NTFS soon making this null and void,
        but in the interim, it fixes a known problem with NTFS and large allocations.

<davej@suse.de> (02/04/04 1.369.1.170)
        [PATCH] increase number of transaction locks in JFS txnmgr
        Original fix from Andi Kleen

<davej@suse.de> (02/04/04 1.369.1.171)
        [PATCH] MSDOS fs option parser cleanup
        Original from Rene Scharfe
        This fixes a problem where MSDOS fs's ignore their 'check' mount option.

<davej@suse.de> (02/04/04 1.369.1.172)
        [PATCH] bss bits for isofs
        Originally from the kernel janitor folks

<davej@suse.de> (02/04/04 1.369.1.173)
        [PATCH] QNX4fs sync
        Brings QNX4FS back in sync with 2.4

<davej@suse.de> (02/04/04 1.369.1.174)
        [PATCH] better dquot accounting

<davej@suse.de> (02/04/04 1.369.1.175)
        [PATCH] ext3 inode generation improvements.
        Originally from Andrew Morton

<davej@suse.de> (02/04/04 1.369.1.176)
        [PATCH] named structure initialisers for fs/
        Originally by Grant R.Guenther
        Has had a quick once over by Al, who weeded out one chunk that was

<davej@suse.de> (02/04/04 1.369.1.177)
        [PATCH] struct super_block cleanup - reiserfs
        Original from: Brian Gerst <bgerst@didntduck.org>
        Has had a once over by Chris Mason and Al.
        Seperates reiserfs_sb_info from struct super_block.
                                                        Brian Gerst

<davej@suse.de> (02/04/04 1.369.1.186)
        [PATCH] EFI GUID partition support update.
        More bits from Matt Domsch. Fixes GUID printing, and updates
        to what's in the IA64 tree. Other cleanups are mentioned in
        the changelog in the patch.

<greg@kroah.com> (02/04/04 1.369.101.2)
        moved files to different subdirectories to make try to make sense
        of the current mess, and to allow usb client drivers to integrate into
        the tree easier.

<viro@math.psu.edu> (02/04/04 1.369.1.187)
        [PATCH] IS_DEADDIR checks (2.5)
                2.4 variant will go to Marcelo in a couple of minutes.
        Patch moves IS_DEADDIR() checks into may_delete().

<greg@kroah.com> (02/04/04 1.369.101.3)
        usb subsystem now builds as modules.
        dependancies still seem broken.

<torvalds@penguin.transmeta.com> (02/04/04 1.369.1.188)
        update x86 defconfig

<torvalds@penguin.transmeta.com> (02/04/04 1.369.1.189)
        Fix tlbflush header file dependencies

<torvalds@penguin.transmeta.com> (02/04/04 1.369.1.190)
        uhhuh. Fix duplicate merge from -dj tree

<rml@tech9.net> (02/04/04 1.369.1.191)
        [PATCH] preemptive kernel behavior change: don't be rude
        - do not manually set task->state
        - instead, in preempt_schedule, set a flag in preempt_count that
          denotes that this task is entering schedule off a kernel preemption.
        - use this flag in schedule to jump to pick_next_task
        - in preempt_schedule, upon return from schedule, unset the flag
        - have entry.S just call preempt_schedule and not duplicate this work,
          as Linus suggested.  I agree.  Note this makes debugging easier as
          we keep a single point of entry for kernel preemptions.
        The result: we can safely preempt non-TASK_RUNNING tasks.  If one is
        preempted, we can safely survive schedule because we won't handle the
        special casing of non-TASK_RUNNING at the top of schedule.  Thus other
        tasks can run as desired and our non-TASK_RUNNING task will eventually
        be rescheduled, in its original state, and complete happily.
        This is the behavior we have in the 2.4 patches and 2.5 until
        ~2.5.6-pre.  This works.  It requires no other changes elsewhere (it
        actually removes some special-casing Ingo did in the signal code).

<greg@kroah.com> (02/04/04 1.369.101.4)
        moved lots of the Config.in info into the subdirectories.
        fixed up the makefiles to work nicer.

<torvalds@penguin.transmeta.com> (02/04/04 1.369.1.192)
        Scheduler preempt fixes and cleanu

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis