1. 13 Aug, 2002 40 commits
    • Linus Torvalds's avatar
      Merge bk://ldm.bkbits.net/linux-2.5 · 76044a7f
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      76044a7f
    • Andrew Morton's avatar
      [PATCH] designated initialisers for ext2 · d001e08a
      Andrew Morton authored
      Convert ext2 initialisers to c99 format.  From Art Haas.
      d001e08a
    • Patrick Mochel's avatar
      Remove do_driver_detach(), since device_detach does the same thing · 4446b906
      Patrick Mochel authored
      Make sure we delete devices from the driver list the iteration after we 
      detach them (so we can get a valid next pointer)
      4446b906
    • Patrick Mochel's avatar
      Merge osdl.org:/home/mochel/src/kernel/devel/linux-2.5-virgin · 436d4abd
      Patrick Mochel authored
      into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-driverfs-test
      436d4abd
    • Petr Vandrovec's avatar
      [PATCH] C99 designated initializers for fs/ncpfs · 991d0dcb
      Petr Vandrovec authored
      More C99 initializers fixes in ncpfs. By Art Haas <ahaas@neosoft.com>
      991d0dcb
    • Linus Torvalds's avatar
      Merge http://linuxusb.bkbits.net/linus-2.5 · 8bae8620
      Linus Torvalds authored
      into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
      8bae8620
    • Greg Kroah-Hartman's avatar
    • Greg Kroah-Hartman's avatar
      Merge kroah.com:/home/greg/linux/BK/bleeding_edge-2.5 · 1dab1f42
      Greg Kroah-Hartman authored
      into kroah.com:/home/greg/linux/BK/gregkh-2.5
      1dab1f42
    • Andrew Morton's avatar
      [PATCH] random fixes · 5b1b229f
      Andrew Morton authored
      - I changed the sector_t thing in max_block to use davem's approach.
        I agree with Anton, but making it explicit doesn't hurt.
      
      - Remove a dead comment in copy_strings.
      
      Old stuff:
      
      - Remove the IO error warning in end_buffer_io_sync().  Failed READA
        attempts trigger it.
      
      - Emit a warning when an ext2 is mounting an ext3 filesystem.
      
        We have had quite a few problem reports related to this, mainly
        arising from initrd problems.  And mount(8) tends to report the
        fstype from /etc/fstab rather than reporting what has really
        happened.
      
      Fixes some bogosity which I added to max_block():
      
      - `size' doesn't need to be sector_t
      
      - `retval' should not be initialised to "~0UL" because that is
        0x00000000ffffffff with 64-bit sector_t.
      
      - Allocate task_structs with GFP_KERNEL, as discussed.
      
      - Convert the EXPORT_SYMBOL for generic_file_direct_IO() to
        EXPORT_SYMBOL_GPL.  That was only exported as a practicality for the
        raw driver.
      
      - Make the loop thread run balance_dirty_pages() after dirtying the
        backing file.  So it will perform writeback of the backing file when
        dirty memory levels are high.  Export balance_dirty_pages to GPL
        modules for this.
      
        This makes loop work a lot better - I suspect it broke when callers
        of balance_dirty_pages() started writing back only their own queue.
      
        There are many page allocation failures under heavy loop writeout.
        Coming from blk_queue_bounce()'s allocation from the page_pool
        mempool.  So...
      
      - Disable page allocation warnings around the initial atomic
        allocation attempt in mempool_alloc() - the one where __GFP_WAIT and
        __GFP_IO were turned off.  That one can easily fail.
      
      - Add some commentary in block_write_full_page()
      5b1b229f
    • Andrew Morton's avatar
      [PATCH] scaled writeback throttling levels · 5803a3a6
      Andrew Morton authored
      get_page_state() is showing up on profiles on some big machines.  It is
      a quite expensive function and it is being called too often.
      
      The patch replaces the hardwired RATELIMIT_PAGES with a calculated
      amount based on the amount of memory in the machine and the number of
      CPUs.
      5803a3a6
    • Andrew Morton's avatar
      [PATCH] reduced locking in buffer.c · 88d37bdd
      Andrew Morton authored
      Replace the buffer lru spinlock protection with local_irq_disable and a
      cross-CPU call to invalidate them.
      88d37bdd
    • Andrew Morton's avatar
      [PATCH] fix ARCH_HAS_PREFETCH · 8e4f2fd3
      Andrew Morton authored
      include/linux/prefetch.h does a strange thing: if the arch doesn't have
      the prefectch functions, this header defines no-op version of them and
      then defines ARCH_HAS_PREFETCH.  So there's no way for mainline code to
      know if the architecture *really* has prefetch instructions.
      
      This information loss is unfortunate.  Examples:
      
      	for (i = 0; i < N; i++)
      		prefetch(foo[i]);
      
         Problem is, if `prefetch' is a no-op, the compiler will still
         generate an empty busy-wait loop.  Which it must do.  We need to
         know the truth about ARCH_HAS_PREFETCH to correctly elide that loop.
      8e4f2fd3
    • Oliver Neukum's avatar
      [PATCH] Problem with CDC Ethernet driver (CDCEther.c) · 015377da
      Oliver Neukum authored
        - fixed deadlock
      015377da
    • Ingo Molnar's avatar
      [PATCH] user-vm-unlock-2.5.31-A2 · 456f17cd
      Ingo Molnar authored
      This implements CLONE_VM_RELEASE, which lets the child release the 'user
      VM' at mm_release() time.
      456f17cd
    • Ingo Molnar's avatar
      [PATCH] clone-detached-2.5.31-B0 · aeb44e19
      Ingo Molnar authored
      the attached patch implements the per-CPU thread-structure cache to do
      detached exit, if the parent does not want to be notified of child exit
      via a signal.
      aeb44e19
    • Ingo Molnar's avatar
      [PATCH] CLONE_SETTLS, CLONE_SETTID, 2.5.31-BK · 61afdfc9
      Ingo Molnar authored
      This adds two new clone() flags:
      
          CLONE_SETTLS => if present then the third clone() syscall parameter
                          is the new TLS.
      
          CLONE_SETTID => if present then the child TID is written to the
                          address specified by the fourth clone() parameter.
      
      the new parameters are handled in a safe way, clone() returns -EFAULT or
      -EINVAL if there's some problem with them.
      61afdfc9
    • Badari Pulavarty's avatar
      [PATCH] embarrassing 2.5.31 small bug fix for blkdev_reread_part() · 192b4702
      Badari Pulavarty authored
      Here is a trivial bug fix for blkdev_reread_part() in 2.5.31.
      Without this fix,  "fdisk" hangs with following messages:
      
      	Calling ioctl() to re-read partition table.
      
      	WARNING: Re-reading the partition table failed with error 16:
      			Device or resource busy.
      	The kernel still uses the old table.
      	The new table will be used at the next reboot.
      192b4702
    • Patrick Mochel's avatar
      Merge osdl.org:/home/mochel/src/kernel/devel/linux-2.5-virgin · 8137f0c9
      Patrick Mochel authored
      into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-driverfs-test
      8137f0c9
    • Greg Kroah-Hartman's avatar
    • Patrick Mochel's avatar
      Update device model locking · 789e39b0
      Patrick Mochel authored
      Change all iterators of devices to:
      - use list_for_each
      - check return of get_device_locked
      - don't break until we hold the lock if we get an error
      
      When a device's reference count hits 0, remove it from all lists, including
      bus and driver lists.
      
      Between the iterator algorithm and the guaranteed removal from the lists,
      there should never be a device in a list with a reference count of 0. 
      So, whenever we're iterating over the lists, we'll always have a valid 
      device. We don't decrement the refcount until the next iteration of the
      loop, so we're also guaranteed to get the correct next item in the list.
      789e39b0
    • David Brownell's avatar
      [PATCH] HCDs support new DMA APIs (part 2 of 2) · 17f736b6
      David Brownell authored
      - teaches the shared "hcd" code to set urb->*_dma whenever the device
        driver didn't, by creating singleshot mappings.
      17f736b6
    • David Brownell's avatar
      [PATCH] HCDs support new DMA APIs (part 1 of 2) · f7503d44
      David Brownell authored
      -  teaches the hardware-specific code to
         use urb->*_dma instead of creating mappings.
         (And tells ohci-sa1111 to init its buffer pools.)
         EHCI and UHCI also eliminated duplicated state;
         all the HCDs are now a smidgeon smaller.
      
      Sanity checked by enumerating, including through
      a hub, and using a USB Ethernet adapter, with each
      of the three host controllers.
      
      Worth noting:  this removes pci_dma_sync_single()
      calls from UHCI.  On x86 (and some others) that's
      a NOP, but for UHCI on other platforms (rare except
      maybe on IA64, as I understand) this anticipates
      the upcoming patch to remove interrupt automagic.
      (I'll likely submit that after a Linus release that
      catches up to your USB tree. :)
      f7503d44
    • Patrick Mochel's avatar
      Fix and prevent bugs in device_register() · 266c24ad
      Patrick Mochel authored
      When adding to the global device list, we were adding devices just after their parent, while we wanted to
      add them just before. That way when we iterate over the list on suspend and shutdown, we'll hit all
      children before the parents.
      
      Make sure dev->driver_list and dev->bus_list are initialized when the device is registered
      
      Remove device from global and parent's list if registration failed.
      266c24ad
    • Randy Dunlap's avatar
      [PATCH] Network Options and Network Devices together · dd9831ef
      Randy Dunlap authored
      This patch to 2.5.31 pushes "Networking options" and
      "Network device support" together for all architectures
      that have them.
      
      They shouldn't be split apart by Telephony, I2O,
      Fusion, etc.
      dd9831ef
    • Rusty Russell's avatar
      [PATCH] DECLARE_PER_CPU/DEFINE_PER_CPU patch · a2314817
      Rusty Russell authored
      This old __per_cpu_data define wasn't enough if an arch wants to
      use the gcc __thread prefix (thread local storage), which needs to
      go *before* the type in the definition.  So we have to go for a
      DECLARE macro, and while we're there, separate DECLARE and DEFINE,
      as definitions of per-cpu data cannot live in modules.  This also
      means that accidental direct references to per-cpu variables will
      be caught at compile time.
      a2314817
    • Rusty Russell's avatar
      [PATCH] get_cpu_var patch · 466e44bb
      Rusty Russell authored
      This makes introduces get_cpu_var()/put_cpu_var() which gets a
      per-cpu variable and disables preemption, and renames the (unsafe
      under preemption) "this_cpu()" macro to __get_cpu_var().  It also
      deletes the redundant definitions in linux/smp.h.
      466e44bb
    • Rusty Russell's avatar
      [PATCH] Export __per_cpu_offset so modules can use per-cpu data. · b7b75b49
      Rusty Russell authored
      As per Andrew Morton's request.
      b7b75b49
    • Martin J. Bligh's avatar
      [PATCH] NUMA-Q relocate early ioremap · ed44a565
      Martin J. Bligh authored
      This moves the early ioremap call to after cpu_online_map is initialized.
      Note everything is wrapped in clustered_apic_mode, so should be safe.
      ed44a565
    • Jeff Dike's avatar
      [PATCH] UML patch fixup · a3fa31f1
      Jeff Dike authored
      When you reverted the stringify changes I sent last time, you missed removing
      a comment, which is now grossly wrong.  This patch finishes the job.
      a3fa31f1
    • Linus Torvalds's avatar
      Merge http://fbdev.bkbits.net/fbdev-2.5 · 35d9ed07
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      35d9ed07
    • James Simmons's avatar
      M68k fbdev fixes · f35e4d7d
      James Simmons authored
      f35e4d7d
    • Linus Torvalds's avatar
      Merge http://linuxusb.bkbits.net/linus-2.5 · 322bdbf7
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      322bdbf7
    • Alexander Viro's avatar
      b2520184
    • Christoph Hellwig's avatar
      [PATCH] fix syscall prototypes in init/do_mounts.c · ac654455
      Christoph Hellwig authored
      Most syscall take a const char * argument in fact, also mark them extern.
      ac654455
    • Tom Rini's avatar
      [PATCH] A generic RTC driver [3/3] · d7278da5
      Tom Rini authored
      This is part 3 of 3 of the genrtc patches.  This is my own slight bit
      of work, as well as some work by Randolph Chung. This changes
      set_rtc_time(struct *rtc_time) to return an int instead of void.
      This was done so that the arch-specific code here could do additional
      checks on the time and return an error if needed. This then introduces
      include/asm-generic/rtc.h, include/asm-i386/rtc.h and
      include/asm-alpha/rtc.h.  include/asm-generic/rtc.h contains the
      get_rtc_time and set_rtc_time logic that is in drivers/char/rtc.c and
      has been tested on SMP i386.  This also modifies include/asm-ppc/rtc.h
      to return -ENODEV if no rtc hardware is present.
      
      Additionally, Dave Jones pointed out to me a place where we might not be
      safe when jiffies wraps, so this switches that to time_after().
      
      From Randolph Chung, support for a 64bit kernel and a 32bit userland.
      d7278da5
    • Tom Rini's avatar
      [PATCH] A generic RTC driver [2/3] · 23435fb5
      Tom Rini authored
      This is part 2 of 3 of the genrtc driver work.  This is the PPC portion
      of the patch, which creates include/asm-ppc/rtc.h.  This has been in the
      PPC bitkeeper tree for over a month now.
      23435fb5
    • Tom Rini's avatar
      [PATCH] A generic RTC driver [1/3] · a7734ead
      Tom Rini authored
      This is the current version of the genrtc driver from the m68k
      community.  This is slightly different than the version I have sent
      previously in that it has been switched to C99-style initializers,
      which was done in the current m68k CVS tree by Geert Uytterhoeven, and
      the needed changes to select/compile it in general.  I had previously
      asked the m68k community if anyone objected to this being submitted by me,
      and I got Richard Zidlicky's (who's at the top of the file) approval, as
      well as Geert Uytterhoeven's approval.
      a7734ead
    • Albert Cranford's avatar
      [PATCH] 2.5.31 i2c updates · 67fbc2cd
      Albert Cranford authored
      i2c update:
       o Support for SMBus 2.0 PEC Packet Error Checking
       o New adapter-i2c-frodo for SA 1110 board
       o New adapter-i2c-rpx for embeded MPC8XX
       o Replace depreciated cli()&sti() with spin_{un}lock_irq()
       o Updated documentation
      67fbc2cd
    • Hirofumi Ogawa's avatar
      [PATCH] add sendfile() support to fatfs (3/3) · 70f7b4a3
      Hirofumi Ogawa authored
      This patch adds sendfile() support to fatfs.
      70f7b4a3
    • Hirofumi Ogawa's avatar
      [PATCH] Fix generic_file_send() · 242fde60
      Hirofumi Ogawa authored
      sys_sendfile() call,
      
          do_sendfile(out_fd, in_fd, &pos, count, MAX_NON_LFS);
              in_file->f_op->sendfile(out_file, in_file, ppos, count);
      
      But,
      
      ssize_t generic_file_sendfile(struct file *in_file, struct file *out_file,
      			      loff_t *ppos, size_t count)
      
      fist arg of generic_file_sendfile() should be for output. This patch
      fixes this typo.
      242fde60