1. 09 2月, 2013 1 次提交
    • H
      unbreak automounter support on 64-bit kernel with 32-bit userspace (v2) · 4f4ffc3a
      Helge Deller 提交于
      automount-support is broken on the parisc architecture, because the existing
      #if list does not include a check for defined(__hppa__). The HPPA (parisc)
      architecture is similiar to other 64bit Linux targets where we have to define
      autofs_wqt_t (which is passed back and forth to user space) as int type which
      has a size of 32bit across 32 and 64bit kernels.
      
      During the discussion on the mailing list, H. Peter Anvin suggested to invert
      the #if list since only specific platforms (specifically those who do not have
      a 32bit userspace, like IA64 and Alpha) should have autofs_wqt_t as unsigned
      long type.
      
      This suggestion is probably the best way to go, since Arm64 (and maybe others?)
      seems to have a non-working automounter. So in the long run even for other new
      upcoming architectures this inverted check seem to be the best solution, since
      it will not require them to change this #if again (unless they are 64bit only).
      Signed-off-by: NHelge Deller <deller@gmx.de>
      Acked-by: NH. Peter Anvin <hpa@zytor.com>
      Acked-by: NIan Kent <raven@themaw.net>
      Acked-by: NCatalin Marinas <catalin.marinas@arm.com>
      CC: James Bottomley <James.Bottomley@HansenPartnership.com>
      CC: Rolf Eike Beer <eike-kernel@sf-tec.de>
      4f4ffc3a
  2. 08 2月, 2013 6 次提交
  3. 07 2月, 2013 4 次提交
    • S
      virtio_console: Don't access uninitialized data. · aded024a
      Sjur Brændeland 提交于
      Don't access uninitialized work-queue when removing device.
      The work queue is initialized only if the device multi-queue.
      So don't call cancel_work unless this is a multi-queue device.
      
      This fixes the following panic:
      
      Kernel panic - not syncing: BUG!
      Call Trace:
      62031b28:  [<6026085d>] panic+0x16b/0x2d3
      62031b30:  [<6004ef5e>] flush_work+0x0/0x1d7
      62031b60:  [<602606f2>] panic+0x0/0x2d3
      62031b68:  [<600333b0>] memcpy+0x0/0x140
      62031b80:  [<6002d58a>] unblock_signals+0x0/0x84
      62031ba0:  [<602609c5>] printk+0x0/0xa0
      62031bd8:  [<60264e51>] __mutex_unlock_slowpath+0x13d/0x148
      62031c10:  [<6004ef5e>] flush_work+0x0/0x1d7
      62031c18:  [<60050234>] try_to_grab_pending+0x0/0x17e
      62031c38:  [<6004e984>] get_work_gcwq+0x71/0x8f
      62031c48:  [<60050539>] __cancel_work_timer+0x5b/0x115
      62031c78:  [<628acc85>] unplug_port+0x0/0x191 [virtio_console]
      62031c98:  [<6005061c>] cancel_work_sync+0x12/0x14
      62031ca8:  [<628ace96>] virtcons_remove+0x80/0x15c [virtio_console]
      62031ce8:  [<628191de>] virtio_dev_remove+0x1e/0x7e [virtio]
      62031d08:  [<601cf242>] __device_release_driver+0x75/0xe4
      62031d28:  [<601cf2dd>] device_release_driver+0x2c/0x40
      62031d48:  [<601ce0dd>] driver_unbind+0x7d/0xc6
      62031d88:  [<601cd5d9>] drv_attr_store+0x27/0x29
      62031d98:  [<60115f61>] sysfs_write_file+0x100/0x14d
      62031df8:  [<600b737d>] vfs_write+0xcb/0x184
      62031e08:  [<600b58b8>] filp_close+0x88/0x94
      62031e38:  [<600b7686>] sys_write+0x59/0x88
      62031e88:  [<6001ced1>] handle_syscall+0x5d/0x80
      62031ea8:  [<60030a74>] userspace+0x405/0x531
      62031f08:  [<600d32cc>] sys_dup+0x0/0x5e
      62031f28:  [<601b11d6>] strcpy+0x0/0x18
      62031f38:  [<600be46c>] do_execve+0x10/0x12
      62031f48:  [<600184c7>] run_init_process+0x43/0x45
      62031fd8:  [<60019a91>] new_thread_handler+0xba/0xbc
      Signed-off-by: NSjur Brændeland <sjur.brandeland@stericsson.com>
      Cc: stable@kernel.org
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      aded024a
    • L
      Merge tag 'sound-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 6bacaa9d
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "Just a couple of build regression fixes for ASoC fsl stuff.  It
        doesn't look too trivial, but neither intrusive, so hopefully I can
        avoid your curse..."
      
      Hey, Takashi has a good track record, I think he gets a pass..
      
      * tag 'sound-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ASoC: fsl: fix snd-soc-imx-pcm module build
        Revert "ASoC: fsl: fix multiple definition of init_module"
      6bacaa9d
    • L
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 2110cf02
      Linus Torvalds 提交于
      Pull block layer updates from Jens Axboe:
       "I've got a few bits pending for 3.8 final, that I better get sent out.
        It's all been sitting for a while, I consider it safe.
      
        It contains:
      
         - Two bug fixes for mtip32xx, fixing a driver hang and a crash.
      
         - A few-liner protocol error fix for drbd.
      
         - A few fixes for the xen block front/back driver, fixing a potential
           data corruption issue.
      
         - A race fix for disk_clear_events(), causing spurious warnings.  Out
           of the Chrome OS base.
      
         - A deadlock fix for disk_clear_events(), moving it to the a
           unfreezable workqueue.  Also from the Chrome OS base."
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        drbd: fix potential protocol error and resulting disconnect/reconnect
        mtip32xx: fix for crash when the device surprise removed during rebuild
        mtip32xx: fix for driver hang after a command timeout
        block: prevent race/cleanup
        block: remove deadlock in disk_clear_events
        xen-blkfront: handle bvecs with partial data
        llist/xen-blkfront: implement safe version of llist_for_each_entry
        xen-blkback: implement safe iterator for the list of persistent grants
      2110cf02
    • C
      Btrfs: move d_instantiate outside the transaction during mksubvol · 1a65e24b
      Chris Mason 提交于
      Dave Sterba triggered a lockdep complaint about lock ordering
      between the sb_internal lock and the cleaner semaphore.
      
      btrfs_lookup_dentry() checks for orphans if we're looking up
      the inode for a subvolume, and subvolume creation is triggering
      the lookup with a transaction running.
      
      This commit moves the d_instantiate after the transaction closes.
      Signed-off-by: NChris Mason <chris.mason@fusionio.com>
      1a65e24b
  4. 06 2月, 2013 26 次提交
  5. 05 2月, 2013 3 次提交