diff options
author | Kevin Hilman <khilman@linaro.org> | 2015-08-06 17:07:31 -0700 |
---|---|---|
committer | Kevin Hilman <khilman@linaro.org> | 2015-08-06 17:07:31 -0700 |
commit | ab016fd8cfc4b7fefa7e555d6a4c9a9565059c3d (patch) | |
tree | 1e8c4aae8a0f3702039ac8226ec17833a9161aa4 /block | |
parent | 5bf9423e95a9e34c26d02f289337fe0b0aa9ada2 (diff) | |
parent | cdb58535895e51f28ba2c765c51bee160d1a4d30 (diff) |
Merge branch 'linux-linaro-lsk-v3.18' into linux-linaro-lsk-v3.18-android
* linux-linaro-lsk-v3.18: (237 commits)
Linux 3.18.19
x86/xen: allow privcmd hypercalls to be preempted
rtnl: restore notifications for deleted interfaces
Input: synaptics - add min/max quirk for Lenovo S540
Revert "Input: synaptics - add min/max quirk for Lenovo S540"
Revert "nfs: take extra reference to fl->fl_file when running a LOCKU operation"
fs/ufs: restore s_lock mutex_init()
ufs: Fix possible deadlock when looking up directories
ufs: Fix warning from unlock_new_inode()
vfs: Ignore unlocked mounts in fs_fully_visible
KVM: x86: properly restore LVT0
KVM: s390: virtio-ccw: don't overwrite config space values
selinux: fix setting of security labels on NFS
usb: gadget: f_fs: add extra check before unregister_gadget_item
perf/x86: Honor the architectural performance monitoring version
perf: Fix ring_buffer_attach() RCU sync, again
x86/boot: Fix overflow warning with 32-bit binutils
vfs: Remove incorrect debugging WARN in prepend_path
KVM: x86: make vapics_in_nmi_mode atomic
arm: KVM: force execution of HCPTR access on VM exit
...
Conflicts:
security/selinux/hooks.c
Resolution summary:
Conflict between upstream LTS commit f0f61c29dfb0 (selinux: fix
setting of security labels on NFS) and android-3.18 commit 96f8
bcf4a398 (pstore: selinux: add security in-core xattr support for
pstore and debugfs.) Resolution: simple combination.
Diffstat (limited to 'block')
-rw-r--r-- | block/genhd.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/block/genhd.c b/block/genhd.c index 9d776313cdb4..c675ad1ad69b 100644 --- a/block/genhd.c +++ b/block/genhd.c @@ -422,9 +422,9 @@ int blk_alloc_devt(struct hd_struct *part, dev_t *devt) /* allocate ext devt */ idr_preload(GFP_KERNEL); - spin_lock(&ext_devt_lock); + spin_lock_bh(&ext_devt_lock); idx = idr_alloc(&ext_devt_idr, part, 0, NR_EXT_DEVT, GFP_NOWAIT); - spin_unlock(&ext_devt_lock); + spin_unlock_bh(&ext_devt_lock); idr_preload_end(); if (idx < 0) @@ -449,9 +449,9 @@ void blk_free_devt(dev_t devt) return; if (MAJOR(devt) == BLOCK_EXT_MAJOR) { - spin_lock(&ext_devt_lock); + spin_lock_bh(&ext_devt_lock); idr_remove(&ext_devt_idr, blk_mangle_minor(MINOR(devt))); - spin_unlock(&ext_devt_lock); + spin_unlock_bh(&ext_devt_lock); } } @@ -691,13 +691,13 @@ struct gendisk *get_gendisk(dev_t devt, int *partno) } else { struct hd_struct *part; - spin_lock(&ext_devt_lock); + spin_lock_bh(&ext_devt_lock); part = idr_find(&ext_devt_idr, blk_mangle_minor(MINOR(devt))); if (part && get_disk(part_to_disk(part))) { *partno = part->partno; disk = part_to_disk(part); } - spin_unlock(&ext_devt_lock); + spin_unlock_bh(&ext_devt_lock); } return disk; |