@@ -82,6 +82,7 @@ struct multipath {
unsigned saved_queue_if_no_path;/* Saved state during suspension */
unsigned pg_init_retries; /* Number of times to retry pg_init */
unsigned pg_init_count; /* Number of times pg_init called */
+ unsigned long features;
struct work_struct process_queued_ios;
struct list_head queued_ios;
@@ -118,6 +119,15 @@ static void trigger_event(struct work_struct *work);
static void activate_path(struct work_struct *work);
static void deactivate_path(struct work_struct *work);
+static int multipath_test_feature(struct multipath *m, unsigned feature)
+{
+ return test_bit(feature, &m->features);
+}
+
+static void multipath_set_feature(struct multipath *m, unsigned feature)
+{
+ set_bit(feature, &m->features);
+}
/*-----------------------------------------------
* Allocation routines