* [PATCH] block: return void from the queue_sysfs_entry load_module method
@ 2024-10-08 5:08 Christoph Hellwig
2024-10-08 5:15 ` Damien Le Moal
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Christoph Hellwig @ 2024-10-08 5:08 UTC (permalink / raw)
To: axboe; +Cc: linux-block
Requesting a module either succeeds or does nothing, return an error from
this method does not make sense.
Also move the load_module after the store method in the struct
declaration to keep the important show and store methods together.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
block/blk-sysfs.c | 9 +++------
block/elevator.c | 7 ++-----
block/elevator.h | 4 ++--
3 files changed, 7 insertions(+), 13 deletions(-)
diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c
index e85941bec857b6..8717d43e0792b0 100644
--- a/block/blk-sysfs.c
+++ b/block/blk-sysfs.c
@@ -23,8 +23,8 @@
struct queue_sysfs_entry {
struct attribute attr;
ssize_t (*show)(struct gendisk *disk, char *page);
- int (*load_module)(struct gendisk *disk, const char *page, size_t count);
ssize_t (*store)(struct gendisk *disk, const char *page, size_t count);
+ void (*load_module)(struct gendisk *disk, const char *page, size_t count);
};
static ssize_t
@@ -684,11 +684,8 @@ queue_attr_store(struct kobject *kobj, struct attribute *attr,
* queue to ensure that the module file can be read when the request
* queue is the one for the device storing the module file.
*/
- if (entry->load_module) {
- res = entry->load_module(disk, page, length);
- if (res)
- return res;
- }
+ if (entry->load_module)
+ entry->load_module(disk, page, length);
blk_mq_freeze_queue(q);
mutex_lock(&q->sysfs_lock);
diff --git a/block/elevator.c b/block/elevator.c
index 4122026b11f1a1..d6b4eb5443d97f 100644
--- a/block/elevator.c
+++ b/block/elevator.c
@@ -705,19 +705,16 @@ static int elevator_change(struct request_queue *q, const char *elevator_name)
return ret;
}
-int elv_iosched_load_module(struct gendisk *disk, const char *buf,
+void elv_iosched_load_module(struct gendisk *disk, const char *buf,
size_t count)
{
char elevator_name[ELV_NAME_MAX];
if (!elv_support_iosched(disk->queue))
- return -EOPNOTSUPP;
+ return;
strscpy(elevator_name, buf, sizeof(elevator_name));
-
request_module("%s-iosched", strstrip(elevator_name));
-
- return 0;
}
ssize_t elv_iosched_store(struct gendisk *disk, const char *buf,
diff --git a/block/elevator.h b/block/elevator.h
index 2a78544bf20180..dbf357ef4fab93 100644
--- a/block/elevator.h
+++ b/block/elevator.h
@@ -148,8 +148,8 @@ extern void elv_unregister(struct elevator_type *);
* io scheduler sysfs switching
*/
ssize_t elv_iosched_show(struct gendisk *disk, char *page);
-int elv_iosched_load_module(struct gendisk *disk, const char *page,
- size_t count);
+void elv_iosched_load_module(struct gendisk *disk, const char *page,
+ size_t count);
ssize_t elv_iosched_store(struct gendisk *disk, const char *page, size_t count);
extern bool elv_bio_merge_ok(struct request *, struct bio *);
--
2.45.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] block: return void from the queue_sysfs_entry load_module method
2024-10-08 5:08 [PATCH] block: return void from the queue_sysfs_entry load_module method Christoph Hellwig
@ 2024-10-08 5:15 ` Damien Le Moal
2024-10-08 8:36 ` Andreas Hindborg
2024-10-08 13:28 ` Jens Axboe
2 siblings, 0 replies; 4+ messages in thread
From: Damien Le Moal @ 2024-10-08 5:15 UTC (permalink / raw)
To: Christoph Hellwig, axboe; +Cc: linux-block
On 10/8/24 14:08, Christoph Hellwig wrote:
> Requesting a module either succeeds or does nothing, return an error from
> this method does not make sense.
>
> Also move the load_module after the store method in the struct
> declaration to keep the important show and store methods together.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
--
Damien Le Moal
Western Digital Research
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] block: return void from the queue_sysfs_entry load_module method
2024-10-08 5:08 [PATCH] block: return void from the queue_sysfs_entry load_module method Christoph Hellwig
2024-10-08 5:15 ` Damien Le Moal
@ 2024-10-08 8:36 ` Andreas Hindborg
2024-10-08 13:28 ` Jens Axboe
2 siblings, 0 replies; 4+ messages in thread
From: Andreas Hindborg @ 2024-10-08 8:36 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: axboe, linux-block
Christoph Hellwig <hch@lst.de> writes:
> Requesting a module either succeeds or does nothing, return an error from
> this method does not make sense.
>
> Also move the load_module after the store method in the struct
> declaration to keep the important show and store methods together.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
Reviewed-by: Andreas Hindborg <a.hindborg@kernel.org>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] block: return void from the queue_sysfs_entry load_module method
2024-10-08 5:08 [PATCH] block: return void from the queue_sysfs_entry load_module method Christoph Hellwig
2024-10-08 5:15 ` Damien Le Moal
2024-10-08 8:36 ` Andreas Hindborg
@ 2024-10-08 13:28 ` Jens Axboe
2 siblings, 0 replies; 4+ messages in thread
From: Jens Axboe @ 2024-10-08 13:28 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-block
On Tue, 08 Oct 2024 07:08:41 +0200, Christoph Hellwig wrote:
> Requesting a module either succeeds or does nothing, return an error from
> this method does not make sense.
>
> Also move the load_module after the store method in the struct
> declaration to keep the important show and store methods together.
>
>
> [...]
Applied, thanks!
[1/1] block: return void from the queue_sysfs_entry load_module method
commit: a2c17a5ea44f603eb4fbbdc13bdbcec587060635
Best regards,
--
Jens Axboe
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-10-08 13:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-08 5:08 [PATCH] block: return void from the queue_sysfs_entry load_module method Christoph Hellwig
2024-10-08 5:15 ` Damien Le Moal
2024-10-08 8:36 ` Andreas Hindborg
2024-10-08 13:28 ` Jens Axboe
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.