1. 31 Dec, 2003 7 commits
  2. 30 Dec, 2003 33 commits
    • Linus Torvalds's avatar
      a077e99d
    • David S. Miller's avatar
      Merge davem@nuts.ninka.net:/disk1/davem/BK/sparc-2.6 · 4992a7ce
      David S. Miller authored
      into kernel.bkbits.net:/home/davem/sparc-2.6
      4992a7ce
    • David S. Miller's avatar
      [SPARC64]: Update defconfig. · 768d7861
      David S. Miller authored
      768d7861
    • David S. Miller's avatar
      [MEDIA]: ttusb_dec.c needs linux/init.h · 2e9862e3
      David S. Miller authored
      2e9862e3
    • Linus Torvalds's avatar
      Linux 2.6.1-rc1 · f6fb237b
      Linus Torvalds authored
      f6fb237b
    • Linus Torvalds's avatar
      Make IDE DRQ and READY timeouts longer · f921eab8
      Linus Torvalds authored
      The old 50ms / 30ms timeouts apparently weren't sufficient
      with some disks.
      f921eab8
    • David S. Miller's avatar
      Merge nuts.ninka.net:/disk1/davem/BK/sparcwork-2.6 · faa3b867
      David S. Miller authored
      into nuts.ninka.net:/disk1/davem/BK/sparc-2.6
      faa3b867
    • Andrew Morton's avatar
      [PATCH] call_usermodehelper retval fix · be907e49
      Andrew Morton authored
      The reworked firmware loader in the DVB patches needs the fix to the
      call_usermodehelper() return value. 
      
      From: Rusty Russell <rusty@rustcorp.com.au>
      
      MODULE_ALIAS_BLOCK() and MODULE_ALIAS_CHAR() define aliases of form
      "XXX-<major>-<minor>", so we should probe for modules using this form.
      Unfortunately in 2.4, block aliases were "XXX-<major>" and char aliases
      were of both forms.
      
      Ideally, all modules would now be using MODULE_ALIAS() macros to define
      their aliases, and the old configuration files wouldn't matter as much. 
      Unfortunately, this hasn't happened, so we make request_module() return the
      exit status of modprobe, and then do fallback when probing for char and
      block devices.
      
      (Kudos to Chris Wright, I stole his kernel_thread flags).
      be907e49
    • Andrew Morton's avatar
      [PATCH] strip out PCI cruft from i82365 driver · 6a429be8
      Andrew Morton authored
      From: David Hinds <dhinds@sonic.net>
      
      This removes dead PCI-related code from the i82365 driver.
      6a429be8
    • Andrew Morton's avatar
      [PATCH] reduce kernel stack usage in PCMCIA CIS parsing · d3444889
      Andrew Morton authored
      From: David Hinds <dhinds@sonic.net>
      
      This changes the PCMCIA CIS parsing code to use kmalloc() rather than
      allocating some data structures on the kernel stack.
      d3444889
    • Andrew Morton's avatar
      [PATCH] fix for 16-bit PCMCIA interrupt selection · 75c71254
      Andrew Morton authored
      From: David Hinds <dhinds@sonic.net>
      
      This fixes interrupt allocation for 16-bit PCMCIA cards, so that on systems
      supporting ISA bus interrupts, if all ISA interrupts are unavailable, we'll
      fall back on sharing the bridge PCI interrupt.
      75c71254
    • Andrew Morton's avatar
      [PATCH] pcnet_cs driver bug fix / update · 9a639403
      Andrew Morton authored
      From: David Hinds <dhinds@sonic.net>
      
      This fixes half/full duplex selection for certain NE2000 compatible PCMCIA
      cards.
      9a639403
    • Andrew Morton's avatar
      [PATCH] fix yenta printk logging levels · 59326357
      Andrew Morton authored
      From: David Hinds <dhinds@sonic.net>
      
      This just sets missing logging levels for printk's in yenta_socket.
      59326357
    • Andrew Morton's avatar
      [PATCH] dhinds is not 2.6 PCMCIA maintainer · b06c2bc5
      Andrew Morton authored
      From: David Hinds <dhinds@sonic.net>
      
      I have not been actively maintaining PCMCIA for 2.6; I tried asking the
      more active developers to see if someone would step into the job but they
      were not willing to do so at this time.  I'll still submit patches from
      time to time.
      
      (David has a ./CREDITS entry, of course).
      
      We should really put in Russell King here, but I'll let him do that
      himself.
      b06c2bc5
    • Andrew Morton's avatar
      [PATCH] PPC32: Fix the mkprep util to work correctly on Solaris 8 · 856b46ae
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
            Peter Wahl <PeterWahl@web.de>
      
      PPC32: Fix the mkprep util to work correctly on Solaris 8.
      
      - There is a very odd problem with the alignment of dword_t values
        which causes this program to not work correctly when compiled on
        Solaris 8.  The workaround is not use a pointer and to memcpy the
        values instead.
      856b46ae
    • Andrew Morton's avatar
      [PATCH] PPC32: Fix compilation of ppc_ksyms.c on !CONFIG_PPC_STD_MMU · c2192641
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
      
      Fix compilation of arch/ppc/kernel/ppc_ksyms.c on !CONFIG_PPC_STD_MMU
      
      'mol_trampoline' is only defined on CONFIG_PPC_STD_MMU.  Therefore this file
      will not compile on !CONFIG_PPC_STD_MMU without this change.
      c2192641
    • Andrew Morton's avatar
      [PATCH] ppc: netboot build fixes · 710d2b9d
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
      
      The following patch fixes the 'znetboot' and 'znetbootrd' targets so that
      they work again.
      
      - Update the comments to reflect how things work with the correct
        usages now.
      
      - Fix the znetboot / znetbootrd targets.  We now always set end-y,
        and use this to figure out what image will be tftpboot'ed.
      710d2b9d
    • Andrew Morton's avatar
      [PATCH] Fix booting on a number of Motorola PPC32 machines · 6bac5cc7
      Andrew Morton authored
      From: Tom Rini <trini@kernel.crashing.org>
      
      Currently a number of Motorola PPC32 machine will not boot, as the final
      zImage isn't built correctly for them.
      6bac5cc7
    • Linus Torvalds's avatar
      Merge bk://firebox.phunnypharm.org:4040 · e378d578
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      e378d578
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/davem/net-2.6 · d027a95f
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      d027a95f
    • Ben Collins's avatar
      Merge http://linux.bkbits.net/linux-2.5 · cf3f977a
      Ben Collins authored
      into debian.org:/usr/src/kernel/linux-2.6
      cf3f977a
    • Linus Torvalds's avatar
      Merge home.osdl.org:/home/torvalds/v2.5/linux · b2e95563
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/akpm
      b2e95563
    • Andrew Morton's avatar
      [PATCH] parisc /proc/interrupts uninitialised var · 1d0990ac
      Andrew Morton authored
      From: James Bottomley <James.Bottomley@SteelEye.com>
      
      The compiler justly complains in this:
      
      	        unsigned int regnr = *(loff_t *) v, i;
      
      	        if (regnr == 0) {
      	                seq_puts(p, "     ");
      	#ifdef CONFIG_SMP
      	                for (i = 0; i < NR_CPUS; i++)
      	#endif
      	                        seq_printf(p, "      CPU%02d ", i);
      
      That i is uninitialised if CONFIG_SMP is not set.
      1d0990ac
    • Andrew Morton's avatar
      [PATCH] readahead: multiple performance fixes · 2fbe6496
      Andrew Morton authored
      From: Ram Pai <linuxram@us.ibm.com>
      
      I have enclosed a patch that fixes a bunch of performance bugs in the
      readahead code.
      
      Below is a brief summary of the problems noticed and the proposed fixes
      with some results:
         
       Problem 1:  Readahead code closes the readahead window and goes into
       slowread path, if a file is accessed the first time at an offset
       notequal to zero.  In the case of databases(especially in db2), a file
       may not be accessed at offset 0 the first time though the i/o's are
       sequential.
      
       Fix to Problem 1:
                min = get_min_readahead(ra);
               orig_next_size = ra-next_size;
      
       -       if (ra-next_size == 0 && offset == 0) {
       +       if (ra-next_size == 0) {
      
      ------------------------------------------------------------------------
      
       ------------------------------------------------------------------------
       Problem 2: After fixing Problem, the readahead window still does not
       open up the first time, if all the pages requested are already in the
       page cache. This time the window closes because of pagecache hits
       instead of misses. To fix this we put in these changes.
      
       -               check_ra_success(ra, ra-size, actual, orig_next_size);
       +               if(!first_access) {
       +                       check_ra_success(ra, ra-size, actual, orig_next_size);
       +               }
      
       ------------------------------------------------------------------------
      
       ------------------------------------------------------------------------
       Problem 3: In the case of large random reads, the readahead window is
       read in, the moment there is a hit in the active window. And it turns
       out that in most of the cases the readahead window gets scrapped,
       because the next large random read does not even touch any of the pages
       in that readahead window. We fixed this by introducing lazy readahead.
       Basically we wait till the last page in the active window gets a hit.
       And once the last page is hit, the readahead window is then read in.
       This fix gave a tremendous boost in the performance.
       To fix this the changes we put in were:
      
                       /*
                        * This read request is within the current window.  It is time
                        * to submit I/O for the ahead window while the application is
                        * crunching through the current window.
                        */
       -               if (ra-ahead_start == 0) {
       +               if (ra-ahead_start == 0 && offset == (ra-start + ra-size -1)) {
      
       ------------------------------------------------------------------------
      
       ------------------------------------------------------------------------
       Problem 4:
             If the request page does not fall in the active window and is not
      the  first page of the read ahead window, we scrap both the active
      window and the readahaed window and read in the active window. But it
      turns out that we read in a lot of pages in the active window based on
      the size of the 'projected readahead window size' (the next_size
      variable). And we end up using part of the active window and waste the
      remaining. We put  in a fix where we read in just as many pages in the
      active window based on the number of pages used in the recent past.
       Again this gave us another big boost in performance and ended up
      beating the performance of aio patch on a DSS workload.
      
       The fix to this is:
                        * ahead window and get some I/O underway for the new
                        * current window.
                        */
       +               if (!first_access && preoffset = ra-start &&
       +                               preoffset < (ra-start + ra-size)) {
       +                       ra-size = preoffset - ra-start + 2;
       +               } else {
       +                       ra-size = ra-next_size;
      
       ------------------------------------------------------------------------
      
       ------------------------------------------------------------------------
       Problem 5:
       With all the above fixes there is very low chance that the readahead
       window shall close.  But however if it does, we found that the slow
       read  path is really slow.  Any loss of sequentiality in the slow read
       path is penalized heavily by closing the window back to zero. So we
       fixed this  by decreasing the window size by one anytime we loose
       sequentiality and  increasing in by 1 if we didn't.
      
                       if (offset != ra-prev_page + 1) {
       -                       ra-size = 0;            /* Not sequential */
       +                       ra-size = ra-size?ra-size-1:0; /*Notsequential */
      
       ------------------------------------------------------------------------
      
      With the above set of fixes we got about 28% improvement in DSS workload
      which is about 5% more than what we got with the suparna's aio patch.
      
      This patch compared equivalent to suparna's aio patch with aio-stress
      run.
      
      It fared better than aio patch for large random io.
      
      We are yet to run a bunch of other benchmarks to evaluate this patch.
      We would like to get your inputs on this patch and any suggestions you
      may have to improve it. I have enclosed a patch with all these changes
      along with some changes to the comments that reflect the new behaviour.
      NOTE: the above patch reverts suparna's aio patch.
      2fbe6496
    • Andrew Morton's avatar
      [PATCH] Fix 2.6.0's broken documentation references · 56d7e6f4
      Andrew Morton authored
      From: Hans Ulrich Niedermann <linux-kernel@n-dimensional.de>
      
      I've noted that 2.6.0 contains broken references to documentation.
      
      I got sufficiently annoyed chasing doc files in the wrong place
      that I wrote a script to check the references to documentation
      files.
      
      Some documentation files have moved (e.g.  Documentation/modules.txt to
      Documentation/kbuild/modules.txt).  I adapted the references with a script.
      56d7e6f4
    • Andrew Morton's avatar
      [PATCH] reiserfs_rename ctime update · 4e2e30bb
      Andrew Morton authored
      From: Nikita Danilov <Nikita@Namesys.COM>
      
      This patches reiserfs_rename.  It adds ctime update of renamed object.  It
      also fixes calculation of maximal possible transaction size during rename.
      
      Thanks to Alex Adriaanse <alex_a@caltech.edu> for finding this.
      4e2e30bb
    • Andrew Morton's avatar
      [PATCH] reiserfs commit_max_age mount option · a8007b5b
      Andrew Morton authored
      From: Nikita Danilov <Nikita@Namesys.COM>
      
      Add "commit" reiserfs mount option to override maximal transaction age. 
      Usage:
      
      mount -treiserfs -ocommit=<time-in-seconds> /device /mountpoint
      
      Submitted by Hugang <hugang@soulinfo.com>.
      a8007b5b
    • Andrew Morton's avatar
      [PATCH] Fix reiserfs handling of `silent' option. · f37b1ef8
      Andrew Morton authored
      From: Nikita Danilov <Nikita@Namesys.COM>
      
      Patch to teach fs/reiserfs/super.c:reiserfs_fill_super() to respect @silent
      parameter and to not issue any output if @silent is set.
      
      Also remove some trailing white spaces, while we are here.
      f37b1ef8
    • Andrew Morton's avatar
      [PATCH] CONFIG_GAMEPORT documentation · 0eeebbed
      Andrew Morton authored
      From: Muli Ben-Yehuda <mulix@mulix.org>
      
      It's messy, and needs describing.
      0eeebbed
    • Andrew Morton's avatar
      [PATCH] Typo: 2.6.0 docs about kbuild. · 31fae3b5
      Andrew Morton authored
      From: BlaisorBlade <blaisorblade_spam@yahoo.it>
      
      This fixes a "typo" for Kconfig-language docs.
      31fae3b5
    • Andrew Morton's avatar
      [PATCH] shrink_slab acounts for seeks incorrectly · c3f46561
      Andrew Morton authored
      wli points out that shrink_slab inverts the sense of shrinker->seeks: those
      caches which require more seeks to reestablish an object are shrunk harder.
      That's wrong - they should be shrunk less.
      
      So fix that up, but scaling the result so that the patch is actually a no-op
      at this time, because all caches use DEFAULT_SEEKS (2).
      c3f46561
    • Andrew Morton's avatar
      [PATCH] log_buf_len_setup() irq fix · 4be16e54
      Andrew Morton authored
      log_buf_len_setup() is called on the start_kernel->parse_args() path.  It
      must not enable interrupts.
      4be16e54
    • Andrew Morton's avatar
      [PATCH] fix pci_update_resource() / IORESOURCE_UNSET on PPC · e6b1fdb7
      Andrew Morton authored
      From: Harald Welte <laforge@gnumonks.org>
      
      [disclaimer:  This was posted on the linuxppc list before, BenH asked me=20
       to re-post it to lkml]
      
      The prism54 (http://prism54.org) driver for my cardbus adapter works
      with 2.4.x, but not 2.6.x on a Titanium G4 Powerbook IV.
      
      On 2.6.x the error message was
      PCI:0001:02:00.0 Resource 0 [00000000-00001fff] is unassigned
      
      After investigating differences in the PCI code of 2.4.x and 2.6.x, i
      noticed that 2.4.x/arc/ppc/kernel/pci.c:pcibios_update_resource()
      contained a couple of lines that unset the IORESOURCE_UNSET bitflag.
      
      In 2.6.x, this is handled by the generic PCI core in
      drivers/pci/setup-res.c:pci_update_resource() code.  However, the code
      is missing the 'res->flags &=3D ~IORESOURCE_UNSET' part.
      
      The below fix re-adds that section from 2.4.x.=20
      
      I'm not sure wether this belongs into the arch-independent PCI api.
      Anyway, on PPC it seems to be needed for certain cardbus devices.
      
      Any comments welcome.
      e6b1fdb7