FAILED: patch "[PATCH] rbd: move rbd_dev_refresh() definition" failed to apply to 5.4-stable tree
Subsystems (3)
[email protected]
maintainerThe patch below does not apply to the 5.4-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.4.y
git checkout FETCH_HEAD
git cherry-pick -x 0b035401c570
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2023100403-vastly-take-591f@gregkh' --subject-prefix 'PATCH 5.4.y' HEAD^..
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 0b035401c57021fc6c300272cbb1c5a889d4fe45 Mon Sep 17 00:00:00 2001
From: Ilya Dryomov <[email protected]>
Date: Sun, 17 Sep 2023 15:07:40 +0200
Subject: [PATCH] rbd: move rbd_dev_refresh() definition
Move rbd_dev_refresh() definition further down to avoid having to move struct parent_image_info definition in the next commit. This spares some forward declarations too.
drivers/block/rbd.c +33 -35
@@ -633,8 +633,6 @@ static void rbd_dev_remove_parent(struct rbd_device *rbd_dev);static int rbd_dev_refresh (struct rbd_device *rbd_dev);static int rbd_dev_v2_header_onetime (struct rbd_device *rbd_dev); -static int rbd_dev_header_info (struct rbd_device *rbd_dev); -static int rbd_dev_v2_parent_info (struct rbd_device *rbd_dev);static const char *rbd_dev_v2_snap_name (struct rbd_device *rbd_dev,u64 snap_id); static int _rbd_dev_v2_snap_size(struct rbd_device *rbd_dev, u64 snap_id,
@@ -4931,39 +4929,6 @@ static void rbd_dev_update_size(struct rbd_device *rbd_dev) } } -static int rbd_dev_refresh (struct rbd_device *rbd_dev) -{ -u64 mapping_size; -int ret; - -down_write (&rbd_dev->header_rwsem); - mapping_size = rbd_dev->mapping.size; - - ret =rbd_dev_header_info (rbd_dev); -if (ret) - goto out; - -/* -* If there is a parent, see if it has disappeared due to the -* mapped image getting flattened. -*/ -if (rbd_dev->parent) { - ret =rbd_dev_v2_parent_info (rbd_dev); -if (ret) - goto out; - } - -rbd_assert (!rbd_is_snap (rbd_dev)); - rbd_dev->mapping.size = rbd_dev->header.image_size; - -out: -up_write (&rbd_dev->header_rwsem); -if (!ret && mapping_size != rbd_dev->mapping.size) -rbd_dev_update_size (rbd_dev); - -return ret; -} -static const struct blk_mq_ops rbd_mq_ops = { .queue_rq = rbd_queue_rq, };
@@ -7043,6 +7008,39 @@ static int rbd_dev_image_probe(struct rbd_device *rbd_dev, int depth)return ret; } +static int rbd_dev_refresh (struct rbd_device *rbd_dev) +{ +u64 mapping_size; +int ret; + +down_write (&rbd_dev->header_rwsem); + mapping_size = rbd_dev->mapping.size; + + ret =rbd_dev_header_info (rbd_dev); +if (ret) + goto out; + +/* +* If there is a parent, see if it has disappeared due to the +* mapped image getting flattened. +*/ +if (rbd_dev->parent) { + ret =rbd_dev_v2_parent_info (rbd_dev); +if (ret) + goto out; + } + +rbd_assert (!rbd_is_snap (rbd_dev)); + rbd_dev->mapping.size = rbd_dev->header.image_size; + +out: +up_write (&rbd_dev->header_rwsem); +if (!ret && mapping_size != rbd_dev->mapping.size) +rbd_dev_update_size (rbd_dev); + +return ret; +} +static ssize_t do_rbd_add (const char *buf,size_t count) {struct rbd_device *rbd_dev =NULL ;