projects
/
platform
/
kernel
/
linux-starfive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'kvmarm-fixes-5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
[platform/kernel/linux-starfive.git]
/
block
/
blk-integrity.c
diff --git
a/block/blk-integrity.c
b/block/blk-integrity.c
index
69a1217
..
16d5d53
100644
(file)
--- a/
block/blk-integrity.c
+++ b/
block/blk-integrity.c
@@
-426,8
+426,15
@@
EXPORT_SYMBOL(blk_integrity_register);
*/
void blk_integrity_unregister(struct gendisk *disk)
{
*/
void blk_integrity_unregister(struct gendisk *disk)
{
+ struct blk_integrity *bi = &disk->queue->integrity;
+
+ if (!bi->profile)
+ return;
+
+ /* ensure all bios are off the integrity workqueue */
+ blk_flush_integrity();
blk_queue_flag_clear(QUEUE_FLAG_STABLE_WRITES, disk->queue);
blk_queue_flag_clear(QUEUE_FLAG_STABLE_WRITES, disk->queue);
- memset(
&disk->queue->integrity, 0, sizeof(struct blk_integrity
));
+ memset(
bi, 0, sizeof(*bi
));
}
EXPORT_SYMBOL(blk_integrity_unregister);
}
EXPORT_SYMBOL(blk_integrity_unregister);