| .. | .. | 
|---|
| 466 | 466 | } | 
|---|
| 467 | 467 | } else if (t == 2) { | 
|---|
| 468 | 468 | sbi->gc_mode = GC_URGENT_LOW; | 
|---|
|  | 469 | +		} else if (t == 3) { | 
|---|
|  | 470 | +			sbi->gc_mode = GC_URGENT_MID; | 
|---|
|  | 471 | +			if (sbi->gc_thread) { | 
|---|
|  | 472 | +				sbi->gc_thread->gc_wake = 1; | 
|---|
|  | 473 | +				wake_up_interruptible_all( | 
|---|
|  | 474 | +					&sbi->gc_thread->gc_wait_queue_head); | 
|---|
|  | 475 | +			} | 
|---|
| 469 | 476 | } else { | 
|---|
| 470 | 477 | return -EINVAL; | 
|---|
| 471 | 478 | } | 
|---|
| .. | .. | 
|---|
| 496 | 503 | if (!strcmp(a->attr.name, "iostat_period_ms")) { | 
|---|
| 497 | 504 | if (t < MIN_IOSTAT_PERIOD_MS || t > MAX_IOSTAT_PERIOD_MS) | 
|---|
| 498 | 505 | return -EINVAL; | 
|---|
| 499 |  | -		spin_lock(&sbi->iostat_lock); | 
|---|
|  | 506 | +		spin_lock_irq(&sbi->iostat_lock); | 
|---|
| 500 | 507 | sbi->iostat_period_ms = (unsigned int)t; | 
|---|
| 501 |  | -		spin_unlock(&sbi->iostat_lock); | 
|---|
|  | 508 | +		spin_unlock_irq(&sbi->iostat_lock); | 
|---|
| 502 | 509 | return count; | 
|---|
| 503 | 510 | } | 
|---|
| 504 | 511 |  | 
|---|