1. 21 Apr, 2011 8 commits
  2. 20 Apr, 2011 4 commits
    • Sam Ravnborg's avatar
      sparc32: genirq support · 6baa9b20
      Sam Ravnborg authored
      The conversion of sparc32 to genirq is based on original work done
      by David S. Miller.
      Daniel Hellstrom has helped in the conversion and implemented
      the shutdowm functionality.
      Marcel van Nies <morcles@gmail.com> has tested this on Sparc Station 20
      
      Test status:
      sun4c      - not tested
      sun4m,pci  - not tested
      sun4m,sbus - tested (Sparc Classic, Sparc Station 5, Sparc Station 20)
      sun4d      - not tested
      leon       - tested on various combinations of leon boards,
                   including SMP variants
      
      generic
         Introduce use of GENERIC_HARDIRQS and GENERIC_IRQ_SHOW
         Allocate 64 IRQs - which is enough even for SS2000
         Use a table of irq_bucket to maintain uses IRQs
            irq_bucket is also used to chain several irq's that
            must be called when the same intrrupt is asserted
         Use irq_link to link a interrupt source to the irq
         All plafforms must now supply their own build_device_irq method
         handler_irq rewriten to use generic irq support
      
      floppy
         Read FLOPPY_IRQ from platform device
         Use generic request_irq to register the floppy interrupt
         Rewrote sparc_floppy_irq to use the generic irq support
      
      pcic:
         Introduce irq_chip
         Store mask in chip_data for use in mask/unmask functions
         Add build_device_irq for pcic
         Use pcic_build_device_irq in pci_time_init
         allocate virtual irqs in pcic_fill_irq
      
      sun4c:
         Introduce irq_chip
         Store mask in chip_data for use in mask/unmask functions
         Add build_device_irq for sun4c
         Use sun4c_build_device_irq in sun4c_init_timers
      
      sun4m:
         Introduce irq_chip
         Introduce dedicated mask/unmask methods
         Introduce sun4m_handler_data that allow easy access to necessary
           data in the mask/unmask functions
         Add a helper method to enable profile_timer (used from smp)
         Added sun4m_build_device_irq
         Use sun4m_build_device_irq in sun4m_init_timers
      
         TODO:
            There is no replacement for smp_rotate that always scheduled
            next CPU as interrupt target upon an interrupt
      
      sun4d:
         Introduce irq_chip
         Introduce dedicated mask/unmask methods
         Introduce sun4d_handler_data that allow easy access to
         necessary data in mask/unmask fuctions
         Rewrote sun4d_handler_irq to use generic irq support
      
         TODO:
            The original implmentation of enable/disable had:
      
                if (irq < NR_IRQS)
                     return;
      
            The new implmentation does not distingush between SBUS and cpu
            interrupts.
            I am no sure what is right here. I assume we need to do
            something for the cpu interrupts.
      
            I have not succeeded booting my sun4d box (with or without this patch)
            and my understanding of this platfrom is limited.
            So I would be a bit suprised if this works.
      
      leon:
         Introduce irq_chip
         Store mask in chip_data for use in mask/unmask functions
         Add build_device_irq for leon
         Use leon_build_device_irq in leon_init_timers
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Acked-by: default avatarDaniel Hellstrom <daniel@gaisler.com>
      Tested-by: default avatarDaniel Hellstrom <daniel@gaisler.com>
      Tested-by: default avatarMarcel van Nies <morcles@gmail.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6baa9b20
    • Sam Ravnborg's avatar
      sparc32: cleanup code for pci init · 06010fb5
      Sam Ravnborg authored
      Move the ifdeffery to a header file to make the logic more
      obvious where we decide between PCI or SBUS init
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      06010fb5
    • Sam Ravnborg's avatar
      sparc32,sun4d: rename sbus_tid to board_to_cpu in irq support · db1cdd14
      Sam Ravnborg authored
      The new name reflects the actual usage much better.
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      db1cdd14
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 · 2f666bcf
      Linus Torvalds authored
      * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
        drm/radeon/kms: pll tweaks for r7xx
        drm/nouveau: fix allocation of notifier object
        drm/nouveau: fix notifier memory corruption bug
        drm/nouveau: fix pinning of notifier block
        drm/nouveau: populate ttm_alloced with false, when it's not
        drm/nouveau: fix nv30 pcie boards
        drm/nouveau: split ramin_lock into two locks, one hardirq safe
        drm/radeon/kms: adjust evergreen display watermark setup
        drm/radeon/kms: add connectors even if i2c fails
        drm/radeon/kms: fix bad shift in atom iio table parser
      2f666bcf
  3. 19 Apr, 2011 20 commits
  4. 18 Apr, 2011 8 commits
    • Linus Torvalds's avatar
      Merge branch 'for-39-rc4' of git://codeaurora.org/quic/kernel/davidb/linux-msm · e024f69d
      Linus Torvalds authored
      * 'for-39-rc4' of git://codeaurora.org/quic/kernel/davidb/linux-msm:
        msm: timer: fix missing return value
        msm: Remove extraneous ffa device check
      e024f69d
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 96fd2d57
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: xen-kbdfront - fix mouse getting stuck after save/restore
        Input: estimate number of events per packet
        Input: evdev - indicate buffer overrun with SYN_DROPPED
        Input: document event types and codes and their intended use
        Input: add KEY_IMAGES specifically for AL Image Browser
        Input: twl4030_keypad - fix potential NULL dereference in twl4030_kp_probe()
        Input: h3600_ts - fix error handling at connect
        Input: twl4030_keypad - avoid potential NULL-pointer dereference
      96fd2d57
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block · 8a83f331
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
        block: add blk_run_queue_async
        block: blk_delay_queue() should use kblockd workqueue
        md: fix up raid1/raid10 unplugging.
        md: incorporate new plugging into raid5.
        md: provide generic support for handling unplug callbacks.
        md - remove old plugging code.
        md/dm - remove remains of plug_fn callback.
        md: use new plugging interface for RAID IO.
        block: drop queue lock before calling __blk_run_queue() for kblockd punt
        Revert "block: add callback function for unplug notification"
        block: Enhance new plugging support to support general callbacks
      8a83f331
    • Linus Torvalds's avatar
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 5d5b1b9f
      Linus Torvalds authored
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
        powerpc/powermac: Build fix with SMP and CPU hotplug
        powerpc/perf_event: Skip updating kernel counters if register value shrinks
        powerpc: Don't write protect kernel text with CONFIG_DYNAMIC_FTRACE enabled
        powerpc: Fix oops if scan_dispatch_log is called too early
        powerpc/pseries: Use a kmem cache for DTL buffers
        powerpc/kexec: Fix regression causing compile failure on UP
        powerpc/85xx: disable Suspend support if SMP enabled
        powerpc/e500mc: Remove CPU_FTR_MAYBE_CAN_NAP/CPU_FTR_MAYBE_CAN_DOZE
        powerpc/book3e: Fix CPU feature handling on 64-bit e5500
        powerpc: Check device status before adding serial device
        powerpc/85xx: Don't add disabled PCIe devices
      5d5b1b9f
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable · adff377b
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (24 commits)
        Btrfs: fix free space cache leak
        Btrfs: avoid taking the chunk_mutex in do_chunk_alloc
        Btrfs end_bio_extent_readpage should look for locked bits
        Btrfs: don't force chunk allocation in find_free_extent
        Btrfs: Check validity before setting an acl
        Btrfs: Fix incorrect inode nlink in btrfs_link()
        Btrfs: Check if btrfs_next_leaf() returns error in btrfs_real_readdir()
        Btrfs: Check if btrfs_next_leaf() returns error in btrfs_listxattr()
        Btrfs: make uncache_state unconditional
        btrfs: using cached extent_state in set/unlock combinations
        Btrfs: avoid taking the trans_mutex in btrfs_end_transaction
        Btrfs: fix subvolume mount by name problem when default mount subvolume is set
        fix user annotation in ioctl.c
        Btrfs: check for duplicate iov_base's when doing dio reads
        btrfs: properly handle overlapping areas in memmove_extent_buffer
        Btrfs: fix memory leaks in btrfs_new_inode()
        Btrfs: check for duplicate iov_base's when doing dio reads
        Btrfs: reuse the extent_map we found when calling btrfs_get_extent
        Btrfs: do not use async submit for small DIO io's
        Btrfs: don't split dio bios if we don't have to
        ...
      adff377b
    • Linus Torvalds's avatar
      proc: do proper range check on readdir offset · d8bdc59f
      Linus Torvalds authored
      Rather than pass in some random truncated offset to the pid-related
      functions, check that the offset is in range up-front.
      
      This is just cleanup, the previous commit fixed the real problem.
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d8bdc59f
    • Linus Torvalds's avatar
      next_pidmap: fix overflow condition · c78193e9
      Linus Torvalds authored
      next_pidmap() just quietly accepted whatever 'last' pid that was passed
      in, which is not all that safe when one of the users is /proc.
      
      Admittedly the proc code should do some sanity checking on the range
      (and that will be the next commit), but that doesn't mean that the
      helper functions should just do that pidmap pointer arithmetic without
      checking the range of its arguments.
      
      So clamp 'last' to PID_MAX_LIMIT.  The fact that we then do "last+1"
      doesn't really matter, the for-loop does check against the end of the
      pidmap array properly (it's only the actual pointer arithmetic overflow
      case we need to worry about, and going one bit beyond isn't going to
      overflow).
      
      [ Use PID_MAX_LIMIT rather than pid_max as per Eric Biederman ]
      Reported-by: default avatarTavis Ormandy <taviso@cmpxchg8b.com>
      Analyzed-by: default avatarRobert Święcki <robert@swiecki.net>
      Cc: Eric W. Biederman <ebiederm@xmission.com>
      Cc: Pavel Emelyanov <xemul@openvz.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c78193e9
    • Igor Mammedov's avatar
      Input: xen-kbdfront - fix mouse getting stuck after save/restore · c36b58e8
      Igor Mammedov authored
      Mouse gets "stuck" after restore of PV guest but buttons are in working
      condition.
      
      If driver has been configured for ABS coordinates at start it will get
      XENKBD_TYPE_POS events and then suddenly after restore it'll start getting
      XENKBD_TYPE_MOTION events, that will be dropped later and they won't get
      into user-space.
      
      Regression was introduced by hunk 5 and 6 of
      5ea5254a
      ("Input: xen-kbdfront - advertise either absolute or relative
      coordinates").
      
      Driver on restore should ask xen for request-abs-pointer again if it is
      available. So restore parts that did it before 5ea5254a.
      Acked-by: default avatarOlaf Hering <olaf@aepfle.de>
      Signed-off-by: default avatarIgor Mammedov <imammedo@redhat.com>
      [v1: Expanded the commit description]
      Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
      c36b58e8