1. 26 Feb, 2011 4 commits
  2. 23 Jan, 2011 5 commits
  3. 20 Jan, 2011 1 commit
    • Stefan Richter's avatar
      firewire: core: fix unstable I/O with Canon camcorder · 6044565a
      Stefan Richter authored
      Regression since commit 10389536, "firewire: core: check for 1394a
      compliant IRM, fix inaccessibility of Sony camcorder":
      
      The camcorder Canon MV5i generates lots of bus resets when asynchronous
      requests are sent to it (e.g. Config ROM read requests or FCP Command
      write requests) if the camcorder is not root node.  This causes drop-
      outs in videos or makes the camcorder entirely inaccessible.
      https://bugzilla.redhat.com/show_bug.cgi?id=633260
      
      Fix this by allowing any Canon device, even if it is a pre-1394a IRM
      like MV5i are, to remain root node (if it is at least Cycle Master
      capable).  With the FireWire controller cards that I tested, MV5i always
      becomes root node when plugged in and left to its own devices.
      
      Reported-by: Ralf Lange
      Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
      Cc: <stable@kernel.org> # 2.6.32.y and newer
      6044565a
  4. 13 Jan, 2011 1 commit
    • Clemens Ladisch's avatar
      firewire: ohci: fix compilation on arches without PAGE_KERNEL_RO · 14271304
      Clemens Ladisch authored
      PAGE_KERNEL_RO is not available on all architectures, so its use
      in the new AR code broke compilation on sparc64.
      
      Because the read-only mapping was just a debugging aid, just use
      PAGE_KERNEL instead.
      Signed-off-by: default avatarClemens Ladisch <clemens@ladisch.de>
      
      James Bottomley wrote:
      > On Thu, 2011-01-13 at 08:27 +0100, Clemens Ladisch wrote:
      >> firewire: ohci: fix compilation on arches without PAGE_KERNEL_RO, e.g. sparc
      >>
      >> PAGE_KERNEL_RO is not available on all architectures, so its use in the
      >> new AR code broke compilation on sparc64.
      >>
      >> Because the R/O mapping is only used to catch drivers that try to write
      >> to the reception buffer and not actually required for correct operation,
      >> we can just use a normal PAGE_KERNEL mapping where _RO is not available.
      [...]
      >> +/*
      >> + * For archs where PAGE_KERNEL_RO is not supported;
      >> + * mapping the AR buffers readonly for the CPU is just a debugging aid.
      >> + */
      >> +#ifndef PAGE_KERNEL_RO
      >> +#define PAGE_KERNEL_RO PAGE_KERNEL
      >> +#endif
      >
      > This might cause interesting issues on sparc64 if it ever acquired a
      > PAGE_KERNEL_RO.  Sparc64 has extern pgprot_t for it's PAGE_KERNEL types
      > rather than #defines, so the #ifdef check wouldn't see this.
      >
      > I think either PAGE_PROT_RO becomes part of our arch API (so all
      > architectures are forced to add it), or, if it's not part of the API,
      > ohci isn't entitled to use it.  The latter seems simplest since you have
      > no real use for write protection anyway.
      Reported-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
      14271304
  5. 04 Jan, 2011 4 commits
  6. 03 Jan, 2011 1 commit
  7. 19 Dec, 2010 2 commits
    • Stefan Richter's avatar
      firewire: net: set carrier state at ifup · c1671470
      Stefan Richter authored
      At ifup, carrier status would be shown on even if it actually was off.
      Also add an include for ethtool_ops rather than to rely on the one from
      netdevice.h.
      
      Note, we can alas not use fwnet_device_mutex to serialize access to
      dev->peer_count (as I originally wanted).  This would cause a lock
      inversion:
        - fwnet_probe | takes fwnet_device_mutex
            + register_netdev | takes rtnl_mutex
        - devinet_ioctl | takes rtnl_mutex
            + fwnet_open | ...must not take fwnet_device_mutex
      
      Hence use the dev->lock spinlock for serialization.
      Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
      c1671470
    • Maxim Levitsky's avatar
      firewire: net: add carrier detection · 18bb36f9
      Maxim Levitsky authored
      To make userland, e.g. NetworkManager work with firewire, we need to
      detect whether cable is plugged or not.  Simple and correct way of doing
      that is just counting number of peers.  No peers - no link and vice
      versa.
      Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
      18bb36f9
  8. 13 Dec, 2010 10 commits
  9. 12 Dec, 2010 4 commits
  10. 07 Dec, 2010 3 commits
  11. 06 Dec, 2010 5 commits
    • Linus Torvalds's avatar
      Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 · 7787d2c2
      Linus Torvalds authored
      * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
        PM / Hibernate: Fix memory corruption related to swap
        PM / Hibernate: Use async I/O when reading compressed hibernation image
      7787d2c2
    • Rafael J. Wysocki's avatar
      PM / Hibernate: Fix memory corruption related to swap · c9e664f1
      Rafael J. Wysocki authored
      There is a problem that swap pages allocated before the creation of
      a hibernation image can be released and used for storing the contents
      of different memory pages while the image is being saved.  Since the
      kernel stored in the image doesn't know of that, it causes memory
      corruption to occur after resume from hibernation, especially on
      systems with relatively small RAM that need to swap often.
      
      This issue can be addressed by keeping the GFP_IOFS bits clear
      in gfp_allowed_mask during the entire hibernation, including the
      saving of the image, until the system is finally turned off or
      the hibernation is aborted.  Unfortunately, for this purpose
      it's necessary to rework the way in which the hibernate and
      suspend code manipulates gfp_allowed_mask.
      
      This change is based on an earlier patch from Hugh Dickins.
      Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
      Reported-by: default avatarOndrej Zary <linux@rainbow-software.org>
      Acked-by: default avatarHugh Dickins <hughd@google.com>
      Reviewed-by: default avatarKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
      Cc: stable@kernel.org
      c9e664f1
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/rmk/linux-2.6-arm · 60658f8a
      Linus Torvalds authored
      * master.kernel.org:/home/rmk/linux-2.6-arm:
        ARM: 6524/1: GIC irq desciptor bug fix
        ARM: 6523/1: iop: ensure sched_clock() is notrace
        ARM: 6456/1: Fix for building DEBUG with sa11xx_base.c as a module.
        ARM: 6519/1: kuser: Fix incorrect cmpxchg syscall in kuser helpers
        ARM: 6505/1: kprobes: Don't HAVE_KPROBES when CONFIG_THUMB2_KERNEL is selected
        ARM: 6508/1: vexpress: Correct data alignment in headsmp.S for CONFIG_THUMB2_KERNEL
        ARM: 6507/1: RealView: Correct data alignment in headsmp.S for CONFIG_THUMB2_KERNEL
        ARM: 6504/1: Thumb-2: Fix long-distance conditional branches in head.S for Thumb-2.
        ARM: 6503/1: Thumb-2: Restore sensible zImage header layout for CONFIG_THUMB2_KERNEL
        ARM: 6502/1: Thumb-2: Fix CONFIG_THUMB2_KERNEL breakage in compressed/head.S
        ARM: 6501/1: Thumb-2: Correct data alignment for CONFIG_THUMB2_KERNEL in mm/proc-v7.S
        ARM: 6500/1: Thumb-2: Correct data alignment for CONFIG_THUMB2_KERNEL in kernel/head.S
        ARM: 6499/1: Thumb-2: Correct data alignment for CONFIG_THUMB2_KERNEL in bootp/init.S
        ARM: 6498/1: vfp: Correct data alignment for CONFIG_THUMB2_KERNEL
        ARM: 6497/1: kexec: Correct data alignment for CONFIG_THUMB2_KERNEL
        ARM: 6496/1: GIC: Do not try to register more then NR_IRQS interrupts
        ARM: cns3xxx: Fix build with CONFIG_PCI=y
      60658f8a
    • Bojan Smojver's avatar
      PM / Hibernate: Use async I/O when reading compressed hibernation image · 9f339caf
      Bojan Smojver authored
      This is a fix for reading LZO compressed image using async I/O.
      Essentially, instead of having just one page into which we keep
      reading blocks from swap, we allocate enough of them to cover the
      largest compressed size and then let block I/O pick them all up. Once
      we have them all (and here we wait), we decompress them, as usual.
      Obviously, the very first block we still pick up synchronously,
      because we need to know the size of the lot before we pick up the
      rest.
      
      Also fixed the copyright line, which I've forgotten before.
      Signed-off-by: default avatarBojan Smojver <bojan@rexursive.com>
      Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
      9f339caf
    • Russell King's avatar