lkml.org 
[lkml]   [2011]   [May]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH RESEND 2/3 v2.6.39-rc7] block: make disk_block_events() properly wait for work cancellation
    On 2011-05-18 11:46, Linus Torvalds wrote:
    > On Tue, May 17, 2011 at 10:07 PM, Tejun Heo <tj@kernel.org> wrote:
    >>
    >>> Just make the semaphore protect the count - and you're done.
    >>
    >> Yeah, with that gone, we don't even need the open-coding inside
    >> disk_check_events(). It can simply call syncing block and unblock.
    >> But, do you want that in -rc7? Unnecessarily complicated as the
    >> current code may be, converting the lock to mutex is a larger change
    >> than adding an outer mutex and I think it would be better to do that
    >> during the next cycle.
    >
    > Quite frankly. right now I think I need to just release 2.6.39, and
    > then for 2.6.40 merge the trivial
    >
    > mutex_lock(&ev->mutex);
    > if (!ev->block++)
    > cancel_delayed_work_sync(&ev->dwork);
    > mutex_unlock(&ev->mutex);
    >
    > with a cc: stable for backporting.

    With these changes pushed to 2.6.40, I have the following sitting queued
    up for 2.6.39, of which at least the performance regression and
    blk-throttle fix really should go in. I'll let Tejun voice in on his
    three changes. I would have pushed this a few days ago, but this thread
    had it postponed a bit.

    git://git.kernel.dk/linux-2.6-block.git for-linus

    Jens Axboe (1):
    scsi: remove performance regression due to async queue run

    Shaohua Li (1):
    block: don't delay blk_run_queue_async

    Tejun Heo (3):
    block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers
    cdrom: always check_disk_change() on open
    block: rescan partitions on invalidated devices on -ENOMEDIA too

    Vivek Goyal (1):
    blk-throttle: Use task_subsys_state() to determine a task's blkio_cgroup

    block/blk-cgroup.c | 7 +++++++
    block/blk-cgroup.h | 3 +++
    block/blk-core.c | 4 +++-
    block/blk-throttle.c | 9 ++++-----
    block/cfq-iosched.c | 11 +++++------
    drivers/block/DAC960.c | 1 -
    drivers/block/amiflop.c | 1 -
    drivers/block/ataflop.c | 1 -
    drivers/block/floppy.c | 1 -
    drivers/block/paride/pcd.c | 1 -
    drivers/block/paride/pd.c | 1 -
    drivers/block/paride/pf.c | 1 -
    drivers/block/swim.c | 1 -
    drivers/block/swim3.c | 1 -
    drivers/block/ub.c | 1 -
    drivers/block/xsysace.c | 1 -
    drivers/cdrom/cdrom.c | 6 +++---
    drivers/cdrom/gdrom.c | 1 -
    drivers/cdrom/viocd.c | 1 -
    drivers/message/i2o/i2o_block.c | 1 -
    drivers/s390/char/tape_block.c | 1 -
    drivers/scsi/scsi_lib.c | 20 ++++++++++++++++----
    drivers/scsi/scsi_scan.c | 2 ++
    fs/block_dev.c | 27 ++++++++++++++++++---------
    include/scsi/scsi_device.h | 1 +
    25 files changed, 62 insertions(+), 43 deletions(-)

    --
    Jens Axboe



    \
     
     \ /
      Last update: 2011-05-18 12:29    [W:0.025 / U:34.776 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site