1. 16 Nov, 2006 36 commits
  2. 15 Nov, 2006 4 commits
    • Stephen Rothwell's avatar
      [POWERPC] Wire up sys_move_pages · 9716a340
      Stephen Rothwell authored
      All the infrastructure is already in place for this, so we only need
      to allocate a syscall number and hook it up.
      Signed-off-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      9716a340
    • Stephen Rothwell's avatar
      [POWERPC] Add the thread_siblings files to sysfs · 056f4faa
      Stephen Rothwell authored
      This adds the /sys/devices/system/cpu/*/topology/thread_siblings
      files on powerpc.  These files are already available on other
      architectures.
      Signed-off-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      056f4faa
    • Robin Holt's avatar
      [IA64] bte_unaligned_copy() transfers one extra cache line. · cbf093e8
      Robin Holt authored
      When called to do a transfer that has a start offset within the cache
      line which is uneven between source and destination and a length which
      terminates the source of the copy exactly on a cache line, one extra
      line gets copied into a temporary buffer.  This is normally not an issue
      since the buffer is a kernel buffer and only the requested information
      gets copied into the user buffer.
      
      The problem arises when the source ends at the very last physical page
      of memory.  That last cache line does not exist and results in the SHUB
      chip raising an MCA.
      Signed-off-by: default avatarRobin Holt <holt@sgi.com>
      Signed-off-by: default avatarDean Nelson <dcn@sgi.com>
      Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
      cbf093e8
    • Eric W. Biederman's avatar
      [PATCH] Use delayed disable mode of ioapic edge triggered interrupts · 45c99533
      Eric W. Biederman authored
      Komuro reports that ISA interrupts do not work after a disable_irq(),
      causing some PCMCIA drivers to not work, with messages like
      
      	eth0: Asix AX88190: io 0x300, irq 3, hw_addr xx:xx:xx:xx:xx:xx
      	eth0: found link beat
      	eth0: autonegotiation complete: 100baseT-FD selected
      	eth0: interrupt(s) dropped!
      	eth0: interrupt(s) dropped!
      	eth0: interrupt(s) dropped!
      	...
      
      Linus Torvalds <torvalds@osdl.org> said:
      
        "Now, edge-triggered interrupts are a _lot_ harder to mask, because the
         Intel APIC is an unbelievable piece of sh*t, and has the edge-detect logic
         _before_ the mask logic, so if a edge happens _while_ the device is
         masked, you'll never ever see the edge ever again (unmasking will not
         cause a new edge, so you simply lost the interrupt).
      
         So when you "mask" an edge-triggered IRQ, you can't really mask it at all,
         because if you did that, you'd lose it forever if the IRQ comes in while
         you masked it. Instead, we're supposed to leave it active, and set a flag,
         and IF the IRQ comes in, we just remember it, and mask it at that point
         instead, and then on unmasking, we have to replay it by sending a
         self-IPI."
      
      This trivial patch solves the problem.
      Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Acked-by: default avatarKomuro <komurojun-mbn@nifty.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      45c99533