+++ /dev/null
-From 4e42e03746043963bf20a69e60e408470e1c083e Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 16 Nov 2020 15:56:56 +0100
-Subject: block: remove the update_bdev parameter to
- set_capacity_revalidate_and_notify
-
-From: Christoph Hellwig <hch@lst.de>
-
-[ Upstream commit 449f4ec9892ebc2f37a7eae6d97db2cf7c65e09a ]
-
-The update_bdev argument is always set to true, so remove it. Also
-rename the function to the slighly less verbose set_capacity_and_notify,
-as propagating the disk size to the block device isn't really
-revalidation.
-
-Signed-off-by: Christoph Hellwig <hch@lst.de>
-Reviewed-by: Hannes Reinecke <hare@suse.de>
-Reviewed-by: Petr Vorel <pvorel@suse.cz>
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
-Stable-dep-of: 74363ec674cb ("zram: fix uninitialized ZRAM not releasing backing device")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- block/genhd.c | 13 +++++--------
- drivers/block/loop.c | 2 +-
- drivers/block/virtio_blk.c | 2 +-
- drivers/block/xen-blkfront.c | 2 +-
- drivers/nvme/host/core.c | 2 +-
- drivers/scsi/sd.c | 5 ++---
- include/linux/genhd.h | 3 +--
- 7 files changed, 12 insertions(+), 17 deletions(-)
-
-diff --git a/block/genhd.c b/block/genhd.c
-index 796baf761202..768a49460bf1 100644
---- a/block/genhd.c
-+++ b/block/genhd.c
-@@ -46,17 +46,15 @@ static void disk_del_events(struct gendisk *disk);
- static void disk_release_events(struct gendisk *disk);
-
- /*
-- * Set disk capacity and notify if the size is not currently
-- * zero and will not be set to zero
-+ * Set disk capacity and notify if the size is not currently zero and will not
-+ * be set to zero. Returns true if a uevent was sent, otherwise false.
- */
--bool set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size,
-- bool update_bdev)
-+bool set_capacity_and_notify(struct gendisk *disk, sector_t size)
- {
- sector_t capacity = get_capacity(disk);
-
- set_capacity(disk, size);
-- if (update_bdev)
-- revalidate_disk_size(disk, true);
-+ revalidate_disk_size(disk, true);
-
- if (capacity != size && capacity != 0 && size != 0) {
- char *envp[] = { "RESIZE=1", NULL };
-@@ -67,8 +65,7 @@ bool set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size,
-
- return false;
- }
--
--EXPORT_SYMBOL_GPL(set_capacity_revalidate_and_notify);
-+EXPORT_SYMBOL_GPL(set_capacity_and_notify);
-
- /*
- * Format the device name of the indicated disk into the supplied buffer and
-diff --git a/drivers/block/loop.c b/drivers/block/loop.c
-index 198f7ce3234b..b30f4d525bc8 100644
---- a/drivers/block/loop.c
-+++ b/drivers/block/loop.c
-@@ -238,7 +238,7 @@ static void __loop_update_dio(struct loop_device *lo, bool dio)
- */
- static void loop_set_size(struct loop_device *lo, loff_t size)
- {
-- if (!set_capacity_revalidate_and_notify(lo->lo_disk, size, true))
-+ if (!set_capacity_and_notify(lo->lo_disk, size))
- kobject_uevent(&disk_to_dev(lo->lo_disk)->kobj, KOBJ_CHANGE);
- }
-
-diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c
-index 28ea9b511fd0..c87c6a4eb3b3 100644
---- a/drivers/block/virtio_blk.c
-+++ b/drivers/block/virtio_blk.c
-@@ -470,7 +470,7 @@ static void virtblk_update_capacity(struct virtio_blk *vblk, bool resize)
- cap_str_10,
- cap_str_2);
-
-- set_capacity_revalidate_and_notify(vblk->disk, capacity, true);
-+ set_capacity_and_notify(vblk->disk, capacity);
- }
-
- static void virtblk_config_changed_work(struct work_struct *work)
-diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
-index d68a8ca2161f..19ddbf977d28 100644
---- a/drivers/block/xen-blkfront.c
-+++ b/drivers/block/xen-blkfront.c
-@@ -2443,7 +2443,7 @@ static void blkfront_connect(struct blkfront_info *info)
- return;
- printk(KERN_INFO "Setting capacity to %Lu\n",
- sectors);
-- set_capacity_revalidate_and_notify(info->gd, sectors, true);
-+ set_capacity_and_notify(info->gd, sectors);
-
- return;
- case BLKIF_STATE_SUSPENDED:
-diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
-index c8e64a1e2fc0..c739ac1761ba 100644
---- a/drivers/nvme/host/core.c
-+++ b/drivers/nvme/host/core.c
-@@ -2132,7 +2132,7 @@ static void nvme_update_disk_info(struct gendisk *disk,
- capacity = 0;
- }
-
-- set_capacity_revalidate_and_notify(disk, capacity, true);
-+ set_capacity_and_notify(disk, capacity);
-
- nvme_config_discard(disk, ns);
- nvme_config_write_zeroes(disk->queue, ns->ctrl);
-diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
-index 355d38cab862..da6df9809b0c 100644
---- a/drivers/scsi/sd.c
-+++ b/drivers/scsi/sd.c
-@@ -3292,8 +3292,7 @@ static int sd_revalidate_disk(struct gendisk *disk)
-
- sdkp->first_scan = 0;
-
-- set_capacity_revalidate_and_notify(disk,
-- logical_to_sectors(sdp, sdkp->capacity), true);
-+ set_capacity_and_notify(disk, logical_to_sectors(sdp, sdkp->capacity));
- sd_config_write_same(sdkp);
- kfree(buffer);
-
-@@ -3303,7 +3302,7 @@ static int sd_revalidate_disk(struct gendisk *disk)
- * capacity to 0.
- */
- if (sd_zbc_revalidate_zones(sdkp))
-- set_capacity_revalidate_and_notify(disk, 0, true);
-+ set_capacity_and_notify(disk, 0);
-
- out:
- return 0;
-diff --git a/include/linux/genhd.h b/include/linux/genhd.h
-index 03da3f603d30..4b22bfd9336e 100644
---- a/include/linux/genhd.h
-+++ b/include/linux/genhd.h
-@@ -315,8 +315,7 @@ static inline int get_disk_ro(struct gendisk *disk)
- extern void disk_block_events(struct gendisk *disk);
- extern void disk_unblock_events(struct gendisk *disk);
- extern void disk_flush_events(struct gendisk *disk, unsigned int mask);
--bool set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size,
-- bool update_bdev);
-+bool set_capacity_and_notify(struct gendisk *disk, sector_t size);
-
- /* drivers/char/random.c */
- extern void add_disk_randomness(struct gendisk *disk) __latent_entropy;
---
-2.39.5
-
+++ /dev/null
-From 6c5f7461bae51ae92a916c899f0378ba84775dd0 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 24 Aug 2022 12:51:00 +0900
-Subject: drivers/block/zram/zram_drv.c: do not keep dangling zcomp pointer
- after zram reset
-
-From: Sergey Senozhatsky <senozhatsky@chromium.org>
-
-[ Upstream commit 6d2453c3dbc5f70eafc1c866289a90a1fc57ce18 ]
-
-We do all reset operations under write lock, so we don't need to save
-->disksize and ->comp to stack variables. Another thing is that ->comp is
-freed during zram reset, but comp pointer is not NULL-ed, so zram keeps
-the freed pointer value.
-
-Link: https://lkml.kernel.org/r/20220824035100.971816-1-senozhatsky@chromium.org
-Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
-Cc: Minchan Kim <minchan@kernel.org>
-Cc: Nitin Gupta <ngupta@vflare.org>
-Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-Stable-dep-of: 74363ec674cb ("zram: fix uninitialized ZRAM not releasing backing device")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/block/zram/zram_drv.c | 13 ++++---------
- 1 file changed, 4 insertions(+), 9 deletions(-)
-
-diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
-index 8f38e5a1a63f..8e13586be8c9 100644
---- a/drivers/block/zram/zram_drv.c
-+++ b/drivers/block/zram/zram_drv.c
-@@ -1690,9 +1690,6 @@ static int zram_rw_page(struct block_device *bdev, sector_t sector,
-
- static void zram_reset_device(struct zram *zram)
- {
-- struct zcomp *comp;
-- u64 disksize;
--
- down_write(&zram->init_lock);
-
- zram->limit_pages = 0;
-@@ -1702,18 +1699,16 @@ static void zram_reset_device(struct zram *zram)
- return;
- }
-
-- comp = zram->comp;
-- disksize = zram->disksize;
-- zram->disksize = 0;
--
- set_capacity_and_notify(zram->disk, 0);
- part_stat_set_all(&zram->disk->part0, 0);
-
- up_write(&zram->init_lock);
- /* I/O operation under all of CPU are done so let's free */
-- zram_meta_free(zram, disksize);
-+ zram_meta_free(zram, zram->disksize);
-+ zram->disksize = 0;
- memset(&zram->stats, 0, sizeof(zram->stats));
-- zcomp_destroy(comp);
-+ zcomp_destroy(zram->comp);
-+ zram->comp = NULL;
- reset_bdev(zram);
- }
-
---
-2.39.5
-
+++ /dev/null
-From 549838e515708f8ed50c9c55cb15965698642aaf Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 16 Nov 2020 15:56:53 +0100
-Subject: loop: let set_capacity_revalidate_and_notify update the bdev size
-
-From: Christoph Hellwig <hch@lst.de>
-
-[ Upstream commit 3b4f85d02a4bd85cbea999a064235a47694bbb7b ]
-
-There is no good reason to call revalidate_disk_size separately.
-
-Signed-off-by: Christoph Hellwig <hch@lst.de>
-Reviewed-by: Hannes Reinecke <hare@suse.de>
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
-Stable-dep-of: 74363ec674cb ("zram: fix uninitialized ZRAM not releasing backing device")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/block/loop.c | 8 ++------
- 1 file changed, 2 insertions(+), 6 deletions(-)
-
-diff --git a/drivers/block/loop.c b/drivers/block/loop.c
-index 7444cc2a6c86..198f7ce3234b 100644
---- a/drivers/block/loop.c
-+++ b/drivers/block/loop.c
-@@ -238,12 +238,8 @@ static void __loop_update_dio(struct loop_device *lo, bool dio)
- */
- static void loop_set_size(struct loop_device *lo, loff_t size)
- {
-- struct block_device *bdev = lo->lo_device;
--
-- bd_set_nr_sectors(bdev, size);
--
-- if (!set_capacity_revalidate_and_notify(lo->lo_disk, size, false))
-- kobject_uevent(&disk_to_dev(bdev->bd_disk)->kobj, KOBJ_CHANGE);
-+ if (!set_capacity_revalidate_and_notify(lo->lo_disk, size, true))
-+ kobject_uevent(&disk_to_dev(lo->lo_disk)->kobj, KOBJ_CHANGE);
- }
-
- static inline int
---
-2.39.5
-
+++ /dev/null
-From 3559f7961e40869ab03a3b82135b76f9e5ec1e6e Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 16 Nov 2020 15:56:54 +0100
-Subject: nvme: let set_capacity_revalidate_and_notify update the bdev size
-
-From: Christoph Hellwig <hch@lst.de>
-
-[ Upstream commit 5dd55749b79cdf471ca0966ad91541daebac3e2f ]
-
-There is no good reason to call revalidate_disk_size separately.
-
-Signed-off-by: Christoph Hellwig <hch@lst.de>
-Reviewed-by: Hannes Reinecke <hare@suse.de>
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
-Stable-dep-of: 74363ec674cb ("zram: fix uninitialized ZRAM not releasing backing device")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/nvme/host/core.c | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
-index bee55902fe6c..c8e64a1e2fc0 100644
---- a/drivers/nvme/host/core.c
-+++ b/drivers/nvme/host/core.c
-@@ -2132,7 +2132,7 @@ static void nvme_update_disk_info(struct gendisk *disk,
- capacity = 0;
- }
-
-- set_capacity_revalidate_and_notify(disk, capacity, false);
-+ set_capacity_revalidate_and_notify(disk, capacity, true);
-
- nvme_config_discard(disk, ns);
- nvme_config_write_zeroes(disk->queue, ns->ctrl);
-@@ -2213,7 +2213,6 @@ static int nvme_update_ns_info(struct nvme_ns *ns, struct nvme_id_ns *id)
- blk_stack_limits(&ns->head->disk->queue->limits,
- &ns->queue->limits, 0);
- blk_queue_update_readahead(ns->head->disk->queue);
-- nvme_update_bdev_size(ns->head->disk);
- blk_mq_unfreeze_queue(ns->head->disk->queue);
- }
- #endif
-@@ -4095,8 +4094,6 @@ static void nvme_validate_ns(struct nvme_ns *ns, struct nvme_ns_ids *ids)
- */
- if (ret > 0 && (ret & NVME_SC_DNR))
- nvme_ns_remove(ns);
-- else
-- revalidate_disk_size(ns->disk, true);
- }
-
- static void nvme_validate_or_alloc_ns(struct nvme_ctrl *ctrl, unsigned nsid)
---
-2.39.5
-
+++ /dev/null
-From 8f5f6fd0d69bcc9ced33435207c039bcc88d81b3 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 16 Nov 2020 15:56:55 +0100
-Subject: sd: update the bdev size in sd_revalidate_disk
-
-From: Christoph Hellwig <hch@lst.de>
-
-[ Upstream commit b200e38c493b2a5acff4f86d40a3e45d546c664c ]
-
-This avoids the extra call to revalidate_disk_size in sd_rescan and
-is otherwise a no-op because the size did not change, or we are in
-the probe path.
-
-Signed-off-by: Christoph Hellwig <hch@lst.de>
-Reviewed-by: Hannes Reinecke <hare@suse.de>
-Acked-by: Martin K. Petersen <martin.petersen@oracle.com>
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
-Stable-dep-of: 74363ec674cb ("zram: fix uninitialized ZRAM not releasing backing device")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/scsi/sd.c | 8 +++-----
- 1 file changed, 3 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
-index 2f2ca2878876..355d38cab862 100644
---- a/drivers/scsi/sd.c
-+++ b/drivers/scsi/sd.c
-@@ -1767,10 +1767,8 @@ static int sd_sync_cache(struct scsi_disk *sdkp, struct scsi_sense_hdr *sshdr)
- static void sd_rescan(struct device *dev)
- {
- struct scsi_disk *sdkp = dev_get_drvdata(dev);
-- int ret;
-
-- ret = sd_revalidate_disk(sdkp->disk);
-- revalidate_disk_size(sdkp->disk, ret == 0);
-+ sd_revalidate_disk(sdkp->disk);
- }
-
- static int sd_ioctl(struct block_device *bdev, fmode_t mode,
-@@ -3295,7 +3293,7 @@ static int sd_revalidate_disk(struct gendisk *disk)
- sdkp->first_scan = 0;
-
- set_capacity_revalidate_and_notify(disk,
-- logical_to_sectors(sdp, sdkp->capacity), false);
-+ logical_to_sectors(sdp, sdkp->capacity), true);
- sd_config_write_same(sdkp);
- kfree(buffer);
-
-@@ -3305,7 +3303,7 @@ static int sd_revalidate_disk(struct gendisk *disk)
- * capacity to 0.
- */
- if (sd_zbc_revalidate_zones(sdkp))
-- set_capacity_revalidate_and_notify(disk, 0, false);
-+ set_capacity_revalidate_and_notify(disk, 0, true);
-
- out:
- return 0;
---
-2.39.5
-
thunderbolt-add-intel-barlow-ridge-pci-id.patch
thunderbolt-add-support-for-intel-lunar-lake.patch
thunderbolt-add-support-for-intel-panther-lake-m-p.patch
-loop-let-set_capacity_revalidate_and_notify-update-t.patch
-nvme-let-set_capacity_revalidate_and_notify-update-t.patch
-sd-update-the-bdev-size-in-sd_revalidate_disk.patch
-block-remove-the-update_bdev-parameter-to-set_capaci.patch
-zram-use-set_capacity_and_notify.patch
-drivers-block-zram-zram_drv.c-do-not-keep-dangling-z.patch
net-mlx5-make-api-mlx5_core_is_ecpf-accept-const-poi.patch
rdma-mlx5-enforce-same-type-port-association-for-mul.patch
rdma-bnxt_re-add-check-for-path-mtu-in-modify_qp.patch
+++ /dev/null
-From a92b088a5e9f5bb5a2933fab8ffa30ebcbf63295 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 16 Nov 2020 15:57:09 +0100
-Subject: zram: use set_capacity_and_notify
-
-From: Christoph Hellwig <hch@lst.de>
-
-[ Upstream commit 6e017a3931d7722260e3656a6fc9b02de5fb3c5d ]
-
-Use set_capacity_and_notify to set the size of both the disk and block
-device. This also gets the uevent notifications for the resize for free.
-
-Signed-off-by: Christoph Hellwig <hch@lst.de>
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
-Stable-dep-of: 74363ec674cb ("zram: fix uninitialized ZRAM not releasing backing device")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/block/zram/zram_drv.c | 7 ++-----
- 1 file changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
-index 16db4fae5145..8f38e5a1a63f 100644
---- a/drivers/block/zram/zram_drv.c
-+++ b/drivers/block/zram/zram_drv.c
-@@ -1706,7 +1706,7 @@ static void zram_reset_device(struct zram *zram)
- disksize = zram->disksize;
- zram->disksize = 0;
-
-- set_capacity(zram->disk, 0);
-+ set_capacity_and_notify(zram->disk, 0);
- part_stat_set_all(&zram->disk->part0, 0);
-
- up_write(&zram->init_lock);
-@@ -1752,9 +1752,7 @@ static ssize_t disksize_store(struct device *dev,
-
- zram->comp = comp;
- zram->disksize = disksize;
-- set_capacity(zram->disk, zram->disksize >> SECTOR_SHIFT);
--
-- revalidate_disk_size(zram->disk, true);
-+ set_capacity_and_notify(zram->disk, zram->disksize >> SECTOR_SHIFT);
- up_write(&zram->init_lock);
-
- return len;
-@@ -1801,7 +1799,6 @@ static ssize_t reset_store(struct device *dev,
- /* Make sure all the pending I/O are finished */
- fsync_bdev(bdev);
- zram_reset_device(zram);
-- revalidate_disk_size(zram->disk, true);
- bdput(bdev);
-
- mutex_lock(&bdev->bd_mutex);
---
-2.39.5
-