aboutsummaryrefslogtreecommitdiffstats
path: root/fs/partitions/check.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/partitions/check.c')
-rw-r--r--fs/partitions/check.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/fs/partitions/check.c b/fs/partitions/check.c
index 1901137f4eca..3d73d94d93a7 100644
--- a/fs/partitions/check.c
+++ b/fs/partitions/check.c
@@ -276,12 +276,39 @@ static struct part_attribute part_attr_stat = {
276 .show = part_stat_read 276 .show = part_stat_read
277}; 277};
278 278
279#ifdef CONFIG_FAIL_MAKE_REQUEST
280
281static ssize_t part_fail_store(struct hd_struct * p,
282 const char *buf, size_t count)
283{
284 int i;
285
286 if (count > 0 && sscanf(buf, "%d", &i) > 0)
287 p->make_it_fail = (i == 0) ? 0 : 1;
288
289 return count;
290}
291static ssize_t part_fail_read(struct hd_struct * p, char *page)
292{
293 return sprintf(page, "%d\n", p->make_it_fail);
294}
295static struct part_attribute part_attr_fail = {
296 .attr = {.name = "make-it-fail", .mode = S_IRUGO | S_IWUSR },
297 .store = part_fail_store,
298 .show = part_fail_read
299};
300
301#endif
302
279static struct attribute * default_attrs[] = { 303static struct attribute * default_attrs[] = {
280 &part_attr_uevent.attr, 304 &part_attr_uevent.attr,
281 &part_attr_dev.attr, 305 &part_attr_dev.attr,
282 &part_attr_start.attr, 306 &part_attr_start.attr,
283 &part_attr_size.attr, 307 &part_attr_size.attr,
284 &part_attr_stat.attr, 308 &part_attr_stat.attr,
309#ifdef CONFIG_FAIL_MAKE_REQUEST
310 &part_attr_fail.attr,
311#endif
285 NULL, 312 NULL,
286}; 313};
287 314