Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit adc031d2 authored by Joe Maples's avatar Joe Maples Committed by Razziell
Browse files

block: maple: Clean up and add patchlevel macro to keep track of commits



Signed-off-by: default avatarJoe Maples <joe@frap129.org>
parent d09692d2
Loading
Loading
Loading
Loading
+35 −29
Original line number Diff line number Diff line
/*
 * Maple I/O Scheduler
 * Heavily based on Zen, with some parts from Tripndroid.
 * Based on Zen and TripNDroid.
 *
 * Copyright (C) 2012 Brandon Berhent <bbedward@gmail.com>
 *           (C) 2014 LoungeKatt <twistedumbrella@gmail.com>
 *				 2015 Fixes to stop crashing on 3.10 by Matthew Alex <matthewalex@outlook.com>
 *           (C) 2016 Joe Maples <joe@frap129.org>
 *
 * Maple uses Zen's first come first serve style algorithm with seperated read/write
 * expiry to allow for read biases. By prioritizing reads, simple tasks should improve
 * in performance.
 */
#include <linux/blkdev.h>
#include <linux/elevator.h>
@@ -17,13 +21,15 @@
#include <linux/powersuspend.h>
#endif

#define MAPLE_IOSCHED_PATCHLEVEL	(2)

enum maple_sync { ASYNC, SYNC };

static const int sync_read_expire = 150;	/* max time before a read sync is submitted. */
static const int sync_write_expire = 150;	/* max time before a write sync is submitted. */
static const int async_read_expire = 900;	/* ditto for read async, these limits are SOFT! */
static const int async_write_expire = 900;	/* ditto for write async, these limits are SOFT! */
static const int fifo_batch = 16;
static const int fifo_batch = 16;		/* # of sequential requests treated as one by the above parameters. */
static const int writes_starved = 1;		/* max times reads can starve a write */
static const int sleep_latency_multiple = 3;	/* multple for expire time when device is asleep */

@@ -347,7 +353,7 @@ module_exit(maple_exit);

MODULE_AUTHOR("Brandon Berhent");
MODULE_AUTHOR("TripNRaVeR");
MODULE_AUTHOR("Joe Maples <joe@frap129.org>");
MODULE_AUTHOR("Joe Maples");
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Maple I/O Scheduler");
MODULE_VERSION("1.0");