1. 15 May, 2004 40 commits
    • Jeff Garzik's avatar
      Merge redhat.com:/spare/repo/b44-2.6.5 · 170747d7
      Jeff Garzik authored
      into redhat.com:/spare/repo/net-drivers-2.6
      170747d7
    • Pekka Pietikäinen's avatar
      [netdrvr b44] better reset behavior · 694919c6
      Pekka Pietikäinen authored
      This patch makes the b44-after-bcm4400 scenario work for
      me. What was happening is that the broadcom driver sets a "power off MAC"
      bit, and we didn't remove that when initializing the chip.
      Also added some (a bit ugly, I know  ) logic to clear up the address
      filter stuff, which is what recent broadcom drivers do...
      694919c6
    • Linus Torvalds's avatar
      Fix gidsetsize == 0 for real this time. · 78479816
      Linus Torvalds authored
      We need to always allocate at least one indirect block
      pointer, since we always fill out blocks[0] even if
      we don't have any groups.
      78479816
    • Bartlomiej Zolnierkiewicz's avatar
      [PATCH] remove bogus drivers/ide/pci/cmd640.h · 584286cc
      Bartlomiej Zolnierkiewicz authored
      Trivia.
      
      CMD640 driver doesn't use generic IDE PCI code (it doesn't even include
      this header).
      584286cc
    • Bartlomiej Zolnierkiewicz's avatar
      [PATCH] ide-disk.c: more write cache fixes · 7e33820d
      Bartlomiej Zolnierkiewicz authored
      - many Maxtor disks incorrectly claim CACHE FLUSH EXT command support,
        fix it by checking both CACHE FLUSH EXT command and LBA48 support
        (thanks to Eric D. Mudama for help in fixing this)
      
      - write_cache() was called with 'drive->id->cfs_enable_2 & 0x3000' as 'int arg'
        argument which was always truncated to zero due to 'u8 drive->wcache = arg'
        assignment so write cache was indeed enabled but drive->wcache was zero
        (thanks to Rene Herman for help in debugging this)
      
      - flush cache in idedisk_start_power_step() only if ATA-6 CACHE FLUSH (EXT)
        bits are present in disk's identify data (prevents sending unknown commands)
      
      - set drive->wcache in idedisk_setup() not idedisk_attach() (no need to check
        id->command_set_2 - we check id->cfs_enable_2 instead in write_cache() call)
      
      - use ide_cacheflush_p() in idedisk_setup()
      
      - minor cleanups
      7e33820d
    • Andi Kleen's avatar
      [PATCH] Handle empty nodes in sysfs on x86-64 · ab9e69a3
      Andi Kleen authored
      This code is shared between i386 and x86-64, and x86-64 needs to check
      for empty nodes here.  Otherwise you can get oopses at boot in some
      circumstances. 
      
      This handles empty nodes != 0; empty node zero are still broken in other
      ways.
      ab9e69a3
    • Andi Kleen's avatar
      [PATCH] x86-64: fix /dev/mem caching behaviour · f1eda416
      Andi Kleen authored
      This changes the /dev/mem caching behaviour on x86-64 to be compatible
      with i386.
      
      By default everything is set cached.
      
      This actually makes WC MTRRs on AMD systems work, which would get
      overriden by the UC PAT bits that were set earlier.  This can make DVD
      decoding with hardware support a lot faster. 
      
      It also supports O_SYNC now, like i386, although that is not really
      safe, because it allows the user to create undefined cache attribute
      conflicts that can corrupt caches in some circumstances.  I kept it for
      now.  Better would to disallow it, until Terrence Ripperda's PAT
      framework is getting merged, that can avoid these problems. 
      
      Actually it would be probably a good idea to add a printk here to catch
      broken programs for i386 and x86-64, but that is for another patch.
      f1eda416
    • Andi Kleen's avatar
      [PATCH] x86-64 updates · fb75a3d4
      Andi Kleen authored
      Various accumulated x86-64 patches and bug fixes.
      
      It fixes one nasty bug that has been there since NX is used by 
      default in the kernel. With heavy AGP memory allocation it would
      set NX on parts of the kernel mapping in some corner cases, which gave
      endless crash loops. Thanks goes to some wizards in AMD debug labs
      for getting a trace out of this.
      
      Also various other fixes. This patches only changes x86-64 specific
      files, i have some changes outside too that I am sending separately.
      
       - Fix help test for CONFIG_NUMA
       - Don't enable SMT nice on CMP
       - Move HT and MWAIT checks up to generic code
       - Update defconfig
       - Remove duplicated includes (Arthur Othieno)
       - Set up GSI entry for ACPI SCI correctly (from i386)
       - Fix some comments
       - Fix threadinfo printing in oopses
       - Set task alignment to 16 bytes
       - Handle NX bit for code pages correctly in change_page_attr()
       - Use generic nops for non amd specific kernel
       - Add __KERNEL__ checks in unistd.h (David Lee)
      fb75a3d4
    • Linus Torvalds's avatar
      Fix bogus debug code in usb/misc/cytherm.c · ffc60a42
      Linus Torvalds authored
      Uncovered by recent cleanup of "dev_dbg()".
      ffc60a42
    • Andrew Morton's avatar
      [PATCH] i2o_config build fix · 3e924164
      Andrew Morton authored
      Stomp a C99ism.
      3e924164
    • Andrew Morton's avatar
      b332ad9d
    • Andrew Morton's avatar
      [PATCH] typhoon locking fix · 1540760c
      Andrew Morton authored
      Initialise the semaphore even if !MODULE
      1540760c
    • Andrew Morton's avatar
      [PATCH] radeonfb stack space fix · e04dbc40
      Andrew Morton authored
      These (unused) arrays are causing huge stack utilisation when instantiated in
      an auto variable.  Remove them for now.
      e04dbc40
    • Andrew Morton's avatar
      [PATCH] bootmem.c cleanup · bc39e03b
      Andrew Morton authored
      From: Michael Buesch <mbuesch@freenet.de>
      
      - BUG_ON() conversion
      
      - Remove redundant dump_stack() (BUG already does that)
      bc39e03b
    • Andrew Morton's avatar
      [PATCH] groups_alloc(0) clobbers memory past end of block · a2c47912
      Andrew Morton authored
      From: Olaf Kirch <okir@suse.de>
      
      Authentication code in net/sunrpc makes frequent use of groups_alloc(0),
      which seems to clobber memory past the end of what it allocated.
      
      If called with gidsetsize == 0, groups_alloc will set nblocks = 0,
      but still does a
      
      	group_info->blocks[0] = group_info->small_block;
      a2c47912
    • Andrew Morton's avatar
      [PATCH] ac97_plugin_ad1980 porting fix · 52e802f6
      Andrew Morton authored
      From: "Uwe Bugla" <uwe.bugla@gmx.de>
      
      Fix up a mistake in the 2.4->2.6 forward-port of this driver.
      52e802f6
    • Andrew Morton's avatar
      [PATCH] Increase xfsbufd_centisecs when in laptop mode · 03e6a21b
      Andrew Morton authored
      From: Bart Samwel <bart@samwel.tk>
      
      The attached patch is the outcome of a discussion with Nathan.
      
      When laptop mode is active, there is no need for XFS to wake up xfsbufd (the
      daemon that flushes buffers that are too old) too often.  The default is once
      every second, this patch makes laptop mode do it once every 30 seconds.
      03e6a21b
    • Andrew Morton's avatar
      [PATCH] Laptop mode control script support for XFS *_centisecs sysctl values. · a5817343
      Andrew Morton authored
      From: Bart Samwel <bart@samwel.tk>
      
      XFS now uses
      	/proc/sys/fs/xfs/xfssyncd_centisecs
      	/proc/sys/fs/xfs/xfsbufd_centisecs
      	/proc/sys/fs/xfs/age_buffer_centisecs
      
      Here's a patch to support these values in the laptop mode control script.
      a5817343
    • Andrew Morton's avatar
      [PATCH] remove unused acpi_irq_to_vector() · 41dd128c
      Andrew Morton authored
      From: Bjorn Helgaas <bjorn.helgaas@hp.com>
      
      Now that everybody has acpi_gsi_to_irq(), we can nuke the deprecated
      acpi_irq_to_vector().  No references remain.
      41dd128c
    • Andrew Morton's avatar
      [PATCH] floppy.c: better/cleaner use of debugt · 10c9a379
      Andrew Morton authored
      From: "Randy.Dunlap" <rddunlap@osdl.org>
      
      From: "Luiz Fernando N. Capitulino" <lcapitulino@prefeitura.sp.gov.br>
      
      floppy_debugt.patch: better use of the debugt functions.
      10c9a379
    • Andrew Morton's avatar
      [PATCH] floppy.c: better floppy_init error handling · 794b6dd5
      Andrew Morton authored
      From: "Randy.Dunlap" <rddunlap@osdl.org>
      
      From: "Luiz Fernando N. Capitulino" <lcapitulino@prefeitura.sp.gov.br>
      
      Adds a better audit for floppy_init().  Fixes one real bug (in calling
      blk_queue_max_sectors()).
      794b6dd5
    • Andrew Morton's avatar
      [PATCH] Export `laptop_mode' for XFS · 2d976592
      Andrew Morton authored
      From: <bart@samwel.tk>
      
      XFS needs `laptop_mode'.
      2d976592
    • Andrew Morton's avatar
      [PATCH] Remove old sh-sci driver · ff60dd36
      Andrew Morton authored
      From: Paul Mundt <lethal@linux-sh.org>
      
      The old drivers/char sh-sci driver is no long used by anyone, both sh and
      h8300 are using the drivers/serial version at this point, so we can get rid
      of the old one entirely.
      ff60dd36
    • Andrew Morton's avatar
      [PATCH] Fix x86_64 allmodconfig with gcc-3.4.0 · b620063c
      Andrew Morton authored
      From: Andi Kleen <ak@muc.de>
      
      *** Warning: "memcmp" [drivers/atm/zatm.ko] undefined!
      
      gcc 3.4 specific problem.  This patch should fix it.  Actually it would be
      better to move all these EXPORT_SYMBOLs into lib/string.c, it is silly that
      each arch has to duplicate all that.
      b620063c
    • Andrew Morton's avatar
      [PATCH] remove driver model code in mwave driver · 63ad39dc
      Andrew Morton authored
      From: Christoph Hellwig <hch@lst.de>
      
      Someone blindly added sysfs support to the driver long time ago without
      understanding the implications (and if they were understood the driver
      would need half a rewrite for it).  Herber Xu recently noticed the problems
      this causes on unload, so let's if 0 out all that code and get the driver
      working again.
      63ad39dc
    • Andrew Morton's avatar
      [PATCH] Make /proc/sysrq-trigger ignore sysrq_enabled · dd3871ec
      Andrew Morton authored
      It's silly that writing to /proc/sysrq-trigger does nothing if you haven't
      enabled /proc/sys/kernel/sysrq.  So provide a new __handle_sysrq() which
      ignores the sysrq_enabled check.
      
      The patch also withdraws __handle_sysrq_nolock() from the kernel API.  It had
      no callers.
      dd3871ec
    • Andrew Morton's avatar
      [PATCH] x86_64 msr.c warning fix · 04229e50
      Andrew Morton authored
      arch/x86_64/kernel/msr.c:1:10: warning: extra tokens at end of #ident directive
      04229e50
    • Andrew Morton's avatar
      [PATCH] fix aic7xxx_old.c for !PCI · 4167d41d
      Andrew Morton authored
      From: Adrian Bunk <bunk@fs.tum.de>
      
      drivers/scsi/aic7xxx_old.c: In function `aic7xxx_release':
      drivers/scsi/aic7xxx_old.c:10971: warning: implicit declaration of function `pci_release_regions'
      4167d41d
    • Andrew Morton's avatar
      [PATCH] fix tlan.c for !PCI · b2efc82c
      Andrew Morton authored
      From: Adrian Bunk <bunk@fs.tum.de>
      
      drivers/net/tlan.c: In function `tlan_remove_one':
      drivers/net/tlan.c:449: warning: implicit declaration of function `pci_release_regions'
      b2efc82c
    • Andrew Morton's avatar
      [PATCH] fix cyclades compile with !PCI · b618744f
      Andrew Morton authored
      From: Adrian Bunk <bunk@fs.tum.de>
      
      drivers/char/cyclades.c: In function `cy_cleanup_module':
      drivers/char/cyclades.c:5638: warning: implicit declaration of function `pci_release_regions'
      b618744f
    • Andrew Morton's avatar
      [PATCH] Fix endianess in modpost when cross-compiling for sparc on i386 · 42f0e8f2
      Andrew Morton authored
      From: Mathieu Chouquet-Stringer <mchouque@online.fr>
      
      This patch makes the following code work again:
      
      #ifdef STT_REGISTER
                      if (info->hdr->e_machine == EM_SPARC ||
                          info->hdr->e_machine == EM_SPARCV9) {
                              /* Ignore register directives. */
                              if (ELF_ST_TYPE(sym->st_info) == STT_REGISTER)
                                      break;
                      }
      #endif
      
      This portion of code is sparc specific and nothing else in modpost.c uses
      e_machine meaning cross-compiling for sparc on i386 (or any little endian
      machine) is the only way to experience the bug.
      
      Without it, e_machine has the wrong value and modpost then generates a lot
      of "*** Warning: \"symbol\" [filename.ko] undefined" messages.
      42f0e8f2
    • Andrew Morton's avatar
      [PATCH] m68k: use print_modules() · 7d0c5f9a
      Andrew Morton authored
      From: Geert Uytterhoeven <geert@linux-m68k.org>
      7d0c5f9a
    • Andrew Morton's avatar
      [PATCH] implement print_modules() · 22e1c5c4
      Andrew Morton authored
      From: Arjan van de Ven <arjanv@redhat.com>,
            Rusty Russell <rusty@rustcorp.com.au>
      
      The patch below resolves the "Not Yet Implemented" print_modules() thing.
      This is a really useful feature for distros; it allows us to do statistical
      analysis on which modules are present how often in oopses compared to how
      often they are used normally.  In addition it helps to spot candidates for
      certain bugs without having to go back to the customer asking for this
      information.
      22e1c5c4
    • Andrew Morton's avatar
      [PATCH] Fix reiserfs oom crash · d0980c12
      Andrew Morton authored
      From: Oleg Drokin <green@linuxhacker.ru>
      
      Thanks to Standford guys, a case where reiserfs can dereference NULL
      pointer if memory allocation fail during mount was identified.
      d0980c12
    • Andrew Morton's avatar
      [PATCH] fix block layer ioctl bug · deb2ae4a
      Andrew Morton authored
      From: Alan Cox <alan@redhat.com>
      
      The block layer checks for -EINVAL from block layer driver ioctls.  This is
      wrong - ENOTTY is unknown and some drivers correctly use this.  I suspect
      for an internal ioctl 2.7 should change to -ENOIOCTLCMD and bitch about old
      style returns
      
      This is conservative fix for the 2.6 case, it keeps the bogus -EINVAL to
      avoid breaking stuff
      deb2ae4a
    • Andrew Morton's avatar
      [PATCH] fix linux doc errors · 4539d2e4
      Andrew Morton authored
      From: Alan Cox <alan@redhat.com>
      4539d2e4
    • Andrew Morton's avatar
      [PATCH] security: minor cleanups in capability.c · 5671b0c5
      Andrew Morton authored
      From: Chris Wright <chrisw@osdl.org>
      
      Remove confusing error message when loading as secondary module, and ditch
      conditional MY_NAME macro.
      5671b0c5
    • Andrew Morton's avatar
      [PATCH] security: remove empty build of capability.o · fc3a7889
      Andrew Morton authored
      From: Chris Wright <chrisw@osdl.org>
      
      The build includes capability.c when CONFIG_SECURITY=n, yet the whole file is
      ifdef'd out.  Remove unnecessary build step as well as superfluous ifdefs.
      fc3a7889
    • Andrew Morton's avatar
      [PATCH] PCI debug compile fix in sis_router_probe() · cd8d1252
      Andrew Morton authored
      From: Pavel Roskin <proski@gnu.org>
      
      I get a compile error when I define "DEBUG" in arch/i386/pci/pci.h.  Variable
      rt is not defined in sis_router_probe(), file arch/i386/pci/irq.c.
      cd8d1252
    • Andrew Morton's avatar
      [PATCH] calculate NGROUPS_PER_BLOCK from PAGE_SIZE · 7dd692fc
      Andrew Morton authored
      From: Greg Edwards <edwardsg@sgi.com>
      
      On ia64, EXEC_PAGESIZE (max page size) is 65536, but the default page size is
      16k.  This results in NGROUPS_PER_BLOCK in include/linux/sched.h being
      calculated incorrectly when the page size is anything other than 64k.  For
      example, on a 16k page size kernel, a setgroups() call with a gidsetsize of
      65536 will end up walking over memory since only 1/4 of the needed pages were
      allocated for the blocks[] array in the group_info struct.
      
      Patch below calculates NGROUPS_PER_BLOCK from PAGE_SIZE instead.
      7dd692fc