lkml.org 
[lkml]   [2008]   [Jun]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 47/50] md: fix uninitialized use of mddev->recovery_wait
    -stable review patch.  If anyone has any objections, please let us know.
    ---------------------

    From: Dan Williams <dan.j.williams@intel.com>

    upstream commit: a6d8113a986c66aeb379a26b6e0062488b3e59e1

    If an array was created with --assume-clean we will oops when trying to
    set ->resync_max.

    Fix this by initializing ->recovery_wait in mddev_find.

    Cc: <stable@kernel.org>
    Signed-off-by: Dan Williams <dan.j.williams@intel.com>
    Signed-off-by: Neil Brown <neilb@suse.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Chris Wright <chrisw@sous-sol.org>
    ---
    drivers/md/md.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/drivers/md/md.c
    +++ b/drivers/md/md.c
    @@ -274,6 +274,7 @@ static mddev_t * mddev_find(dev_t unit)
    atomic_set(&new->active, 1);
    spin_lock_init(&new->write_lock);
    init_waitqueue_head(&new->sb_wait);
    + init_waitqueue_head(&new->recovery_wait);
    new->reshape_position = MaxSector;
    new->resync_max = MaxSector;

    @@ -5559,7 +5560,6 @@ void md_do_sync(mddev_t *mddev)
    window/2,(unsigned long long) max_sectors/2);

    atomic_set(&mddev->recovery_active, 0);
    - init_waitqueue_head(&mddev->recovery_wait);
    last_check = 0;

    if (j>2) {
    --


    \
     
     \ /
      Last update: 2008-06-07 03:23    [W:0.023 / U:0.840 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site