From ff12b245cc42a179afd9ffb404a5c3833fb07467 Mon Sep 17 00:00:00 2001 From: Javier Date: Sun, 1 Nov 2026 17:00:06 +0100 Subject: linux: flush buffers on module removal --- linux/chudisk.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/linux/chudisk.c b/linux/chudisk.c index f50551c..3d6f79b 100644 --- a/linux/chudisk.c +++ b/linux/chudisk.c @@ -601,6 +601,16 @@ static void chudisk_exit(void) { struct ch375 *dev = &chudisk_dev[0]; struct gendisk **gdp; + int i; + + // Flush buffers for all minors + for (i = 0; i < CHUDISK_MAX_MINORS; i++) { + kdev_t mdevno = MKDEV(MAJOR_NR, i); + + fsync_dev(mdevno); + invalidate_inodes_dev(mdevno); + invalidate_buffers(mdevno); + } // Remove from genhd list for(gdp = &gendisk_head; *gdp; gdp = &((*gdp)->next)) { -- cgit v1.2.3