1. 31 Mar, 2004 2 commits
    • Andrew Morton's avatar
      [PATCH] ppc64: clean up virtual <-> absolute code · 807b9692
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
            Rusty Russell <rusty@rustcorp.com.au>
      
      The iSeries has an arch-specific mapping from physical <-> absolute
      addresses.  Fortunately this is only used in a few places.  However, the
      following arch-specific macros/functions are provided in addition to the
      standard macros:
      
      	__a2p()
      	__a2v()
      	__p2a()
      	__p2v()
      	__v2a()
      	__v2p()
      	absolute_to_phys()
      	phys_to_absolute()
      	virt_to_absolute()
      	absolute_to_virt()
      
      Reduce them to these, with slightly shorter names, and taking either pointers
      or unsigned long (as per __va and __pa) rather than making the caller cast:
      
      	abs_to_phys()
      	phys_to_abs()
      
      And helper macros:
      
      	virt_to_abs()
      	abs_to_virt()
      
      As is standard, virtual addresses are returned as void *, physical and
      absolute as unsigned long.
      
      Note that the change the iSeries_setup is a little subtle: ea is set to
      __va(pa) above, so "phys_to_abs(pa)" is the same as "virt_to_abs(ea)".
      
      Also, REALADDR is renamed to ISERIES_HV_ADDR and used in a couple of places
      where appropriate.
      807b9692
    • Andrew Morton's avatar
      [PATCH] ppc64: make iSeries boot mostly · dd054a0b
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
            Stephen Rothwell <sfr@canb.auug.org.au>
      
      This patch just ensures that the RI bit is set really early as it seems it
      is not on iSeries Power4 machines (or maybe OS400 v5r3 does this).
      dd054a0b
  2. 30 Mar, 2004 17 commits
    • Linus Torvalds's avatar
      Fix serious naming problem. · 1edcedd9
      Linus Torvalds authored
      People were getting quite excited about this.
      1edcedd9
    • Greg Kroah-Hartman's avatar
      [PATCH] back out sysfs reference count change · ab955e9f
      Greg Kroah-Hartman authored
      This backs out Maneesh's sysfs patch that was recently added to the
      kernel.
      
      In its defense, the original patch did solve some fixes that could be
      duplicated on SMP machines, but the side affect of the patch caused lots
      of problems.  Basically it caused kobjects to get their references
      incremented when files that are not present in the kobject are asked for
      (udev can easily trigger this when it looks for files call "dev" in
      directories that do not have that file).  This can cause easy oopses
      when the VFS later ages out those old dentries and the kobject has its
      reference finally released (usually after the module that the kobject
      lived in was removed.)
      
      I will continue to work with Maneesh to try to solve the original bug,
      but for now, this patch needs to be applied.
      ab955e9f
    • Richard Henderson's avatar
      [PATCH] Alpha: UP1500 pci_mem fix · fec1d37f
      Richard Henderson authored
      From: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      
      The memory reserved for PCI probe is not freed properly in some cases,
      for instance with a 3.5Gb of RAM.
      
      Forward port from 2.4.
      fec1d37f
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc64: More incorrect syscall error test · 7a538652
      Benjamin Herrenschmidt authored
      Oops, there was two different code path affected by this
      bug (strace and normal) and I fixed only one. Here's the
      other one:
      7a538652
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc64: Add a sync in context switch on SMP · 0ef9775d
      Benjamin Herrenschmidt authored
      For the same reason as ppc32, we need to ensure that all stores
      done on a CPU has reached the coherency domain and are visible
      to loads done by another CPU when context switching as the same
      thread may be rescheduled almost right away there.
      0ef9775d
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: PCI mmap update · 585d744b
      Benjamin Herrenschmidt authored
      This updates the ppc32 PCI mmap facility to allow mmap'ing of space
      outside of the actual devices, using the host bridge resources instead. 
      
      This allow userland to map things like legacy IO space by either using
      the bridge device itself, or simply any PCI device on the same bus
      domain
      585d744b
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: Allow PREEMPT with SMP in KConfig · f2c371c7
      Benjamin Herrenschmidt authored
      On ppc32, CONFIG_PREEMPT wasn't settable along with CONFIG_SMP
      for historical reasons (smp_processor_id() races). Those races have
      been fixes since then (well, should have been at least) so it's now
      safe to allow both options.
      f2c371c7
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: context switch fixes · ae4e82bd
      Benjamin Herrenschmidt authored
      This fixes a few issues with context switch on ppc32:
      
       - Makes sure we properly flush out all stores to the coherency domain
         when switching out, since the same thread could be switched back in
         on another CPU right away, those stores must be visible to all other
         CPUs. 
      
       - Remove dssall in the assembly calls and do it now once in switch_mm
         (stop vmx streams).  Assume the G5 doesn't need a sync after dssall. 
      
       - Remove bogus isync in the loop setting the userland segment registers
      
       - Do not switch the userland segments when the mm stays the same
      ae4e82bd
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: Remove duplicate export · e810a048
      Benjamin Herrenschmidt authored
      enable_kernel_fp is exported both in ppc_ksyms and near it's
      definition in process.c, remove the former.
      e810a048
    • Benjamin Herrenschmidt's avatar
      [PATCH] ppc32: Even more preempt fixes · f9f57267
      Benjamin Herrenschmidt authored
      Add a warning if enable_kernel_{fp,altivec} is called with preempt
      enabled since this is always an error, and make sure the alignement
      exception handler properly disables preempt when doing FP operations.
      f9f57267
    • Srivatsa Vaddagiri's avatar
      [PATCH] Fix obvious stupid race in do_stop · ff1581f7
      Srivatsa Vaddagiri authored
      We don't set the task state to TASK_INTERRUPTIBLE _before_ checking for
      kthread_should_stop in do_stop.
      ff1581f7
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/davem/net-2.6 · 360f2ed0
      Linus Torvalds authored
      into ppc970.osdl.org:/home/torvalds/v2.6/linux
      360f2ed0
    • Marcelo Tosatti's avatar
      [PATCH] pc300 driver misplaced ; · 023bba10
      Marcelo Tosatti authored
      From Dave Jones.
      
      Oops.
      023bba10
    • Armin Schindler's avatar
      [PATCH] ISDN Eicon driver: NULL pointer check inside spinlock · de1bf52a
      Armin Schindler authored
         Check for valid application pointer inside api spinlock
         in diva_send_message().
      de1bf52a
    • Andrew Morton's avatar
      [PATCH] Make pdflush run at nice 0 · 6e7bbc73
      Andrew Morton authored
      Since pdflush was converted to be launched by the kthread infrastructure it
      has inherited keventd's `nice -10' setting.  That hurts interactivity when
      pdflush is doing lots of work writing back through the dm-crypt layer.
      
      So set pdflush back to `nice 0'.
      6e7bbc73
    • Andrew Morton's avatar
      [PATCH] catch errors when completing bio pairs · ca6530ab
      Andrew Morton authored
      From: Mike Christie <michaelc@cs.wisc.edu>
      
      A couple of drivers can sometimes fail the first segments in a bio then
      requeue the rest of the request.  In this situation, if the last part of
      the bio completes successfully bio_pair_end_* will miss that the beginging
      of the bio had failed becuase they just return one when bi_size is not yet
      zero.  The attached patch moves the error value test before the bi_size to
      catch the above case.
      ca6530ab
    • Andrew Morton's avatar
      [PATCH] Fix BLKPREP_KILL · 2cba47a2
      Andrew Morton authored
      From: Jens Axboe <axboe@suse.de>
      
      Samuel Rydh wrote:
      
      If a MODE_SENSE(6) command is sent to an IDE cd using the CDROM_SEND_PACKET
      ioctl, then the kernel freezes solidly. To reproduce this, one can take the
      SCSI cmd [1a 08 31 00 10 00] and a 16 byte data buffer.
      
      After some bug hunting, I found out that the following is what happens:
      
      - ide-cd recognizes that MODE_SENSE(6) isn't supported and tries
        to abort the request from ide_cdrom_prep_pc by returning BLKPREP_KILL.
      
      - in elv_next_request(), the kill request is handled by
        the following code:
      
      	while (end_that_request_first(rq, 0, rq->nr_sectors))
      		;
      	end_that_request_last(rq);
      
      The while loop never exits. The end_that_request_first() doesn't do anything
      since rq->nr_sectors is 0; it just returns "not-done" after handling those 0
      bytes (rq->bio->bi_size is 16).
      2cba47a2
  3. 29 Mar, 2004 11 commits
  4. 30 Mar, 2004 1 commit
  5. 29 Mar, 2004 9 commits
    • Russell King's avatar
      [ARM] Clean up coherent DMA allocator from previous changes. · b9ed68e3
      Russell King authored
      - Since the coherent DMA allocator is not currently compatible with
        HUGETLB, ensure that we fail at compile time should this option be
        selected.
      - Move struct device/dma mask handling into consistent_alloc().
      - Complain if someone tries to allocate coherent memory larger than
        their DMA mask will permit.
      - Rename consistent_alloc() to __dma_alloc() to ensure that there
        is no confusion that consistent_alloc() has gone.
      - Ensure warnings and errors report the correct function name.
      b9ed68e3
    • Russell King's avatar
      [ARM] Remove consistent_alloc/consistent_free · b23bbf74
      Russell King authored
      Since we've eliminated users of these functions, we can unexport
      them.  Instead, drivers should use the DMA API interfaces.
      b23bbf74
    • Russell King's avatar
    • Russell King's avatar
      [ARM] Extend DMA API on ARM for DMA-able writecombining memory. · 9bacd63e
      Russell King authored
      This is mainly for ARM framebuffer drivers, some of which are
      presently either open-coding this functionality, or using some
      internal ARM architecture function to get what they want.
      9bacd63e
    • Russell King's avatar
      2ccb567a
    • Russell King's avatar
      [ARM] Remove vm_region_dump() debugging. · 8e645822
      Russell King authored
      8e645822
    • Andrew Morton's avatar
      [PATCH] inode dirtying timestamp fix · 18ccf569
      Andrew Morton authored
      It's a bit late in 2.6.5-rc for this, but it does fix a significant bug: for
      the first five minutes after boot, prior to the jiffy wrap, /bin/sync doesn't
      write all of the dirty data.
      
      We currently record an inode's time-of-first-dirtying in the address_space.
      This causes a few problems with dirty block special inodes: when the device
      node for /dev/hda1 needs to be written back we bogusly inspect the timestamp
      for the address_space, which belongs to a different inode.
      
      So move the inode's dirtying time up into the inode itself.
      
      This means that for block-special inodes, inode->dirtied_when represents the
      time at which the inode itself was dirtied.
      
      For regular files it represents the time at which the inode or its pages were
      dirtied.
      
      For blockdevs, the time-of-first-dirtying is recorded in the kernel-internal
      blockdev inode.  Only I_DIRTY_PAGES makes sense on these inodes.
      
      The reason all this works is that when dirtying a page we always run
      
      	__mark_inode_dirty(page->mapping->host);
      
      which refers to the kernel-internal blockdev inode.
      18ccf569
    • Andrew Morton's avatar
      [PATCH] Disable debugging in parport daisy · 2684a91b
      Andrew Morton authored
      From: Andi Kleen <ak@muc.de>
      
      We are in production now. No more debugging needed.
      2684a91b
    • Andrew Morton's avatar
      [PATCH] don't display viocd partitions in /proc/paritions · fd8fbf61
      Andrew Morton authored
      From: Olaf Hering <olh@suse.de>
      
      Further to the recent removal of CDROMs from /proc/partitions.
      fd8fbf61