diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-05-01 20:51:54 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-05-01 20:51:54 -0400 |
commit | 20b4fb485227404329e41ad15588afad3df23050 (patch) | |
tree | f3e099f0ab3da8a93b447203e294d2bb22f6dc05 /drivers/usb/storage | |
parent | b9394d8a657cd3c064fa432aa0905c1b58b38fe9 (diff) | |
parent | ac3e3c5b1164397656df81b9e9ab4991184d3236 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull VFS updates from Al Viro,
Misc cleanups all over the place, mainly wrt /proc interfaces (switch
create_proc_entry to proc_create(), get rid of the deprecated
create_proc_read_entry() in favor of using proc_create_data() and
seq_file etc).
7kloc removed.
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (204 commits)
don't bother with deferred freeing of fdtables
proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h
proc: Make the PROC_I() and PDE() macros internal to procfs
proc: Supply a function to remove a proc entry by PDE
take cgroup_open() and cpuset_open() to fs/proc/base.c
ppc: Clean up scanlog
ppc: Clean up rtas_flash driver somewhat
hostap: proc: Use remove_proc_subtree()
drm: proc: Use remove_proc_subtree()
drm: proc: Use minor->index to label things, not PDE->name
drm: Constify drm_proc_list[]
zoran: Don't print proc_dir_entry data in debug
reiserfs: Don't access the proc_dir_entry in r_open(), r_start() r_show()
proc: Supply an accessor for getting the data from a PDE's parent
airo: Use remove_proc_subtree()
rtl8192u: Don't need to save device proc dir PDE
rtl8187se: Use a dir under /proc/net/r8180/
proc: Add proc_mkdir_data()
proc: Move some bits from linux/proc_fs.h to linux/{of.h,signal.h,tty.h}
proc: Move PDE_NET() to fs/proc/proc_net.c
...
Diffstat (limited to 'drivers/usb/storage')
-rw-r--r-- | drivers/usb/storage/scsiglue.c | 42 |
1 files changed, 14 insertions, 28 deletions
diff --git a/drivers/usb/storage/scsiglue.c b/drivers/usb/storage/scsiglue.c index 4faa982807f2..92b05d95ec5e 100644 --- a/drivers/usb/storage/scsiglue.c +++ b/drivers/usb/storage/scsiglue.c | |||
@@ -437,22 +437,21 @@ void usb_stor_report_bus_reset(struct us_data *us) | |||
437 | * /proc/scsi/ functions | 437 | * /proc/scsi/ functions |
438 | ***********************************************************************/ | 438 | ***********************************************************************/ |
439 | 439 | ||
440 | static int write_info(struct Scsi_Host *host, char *buffer, int length) | ||
441 | { | ||
442 | /* if someone is sending us data, just throw it away */ | ||
443 | return length; | ||
444 | } | ||
445 | |||
440 | /* we use this macro to help us write into the buffer */ | 446 | /* we use this macro to help us write into the buffer */ |
441 | #undef SPRINTF | 447 | #undef SPRINTF |
442 | #define SPRINTF(args...) \ | 448 | #define SPRINTF(args...) seq_printf(m, ## args) |
443 | do { if (pos < buffer+length) pos += sprintf(pos, ## args); } while (0) | ||
444 | 449 | ||
445 | static int proc_info (struct Scsi_Host *host, char *buffer, | 450 | static int show_info (struct seq_file *m, struct Scsi_Host *host) |
446 | char **start, off_t offset, int length, int inout) | ||
447 | { | 451 | { |
448 | struct us_data *us = host_to_us(host); | 452 | struct us_data *us = host_to_us(host); |
449 | char *pos = buffer; | ||
450 | const char *string; | 453 | const char *string; |
451 | 454 | ||
452 | /* if someone is sending us data, just throw it away */ | ||
453 | if (inout) | ||
454 | return length; | ||
455 | |||
456 | /* print the controller name */ | 455 | /* print the controller name */ |
457 | SPRINTF(" Host scsi%d: usb-storage\n", host->host_no); | 456 | SPRINTF(" Host scsi%d: usb-storage\n", host->host_no); |
458 | 457 | ||
@@ -482,28 +481,14 @@ static int proc_info (struct Scsi_Host *host, char *buffer, | |||
482 | SPRINTF(" Transport: %s\n", us->transport_name); | 481 | SPRINTF(" Transport: %s\n", us->transport_name); |
483 | 482 | ||
484 | /* show the device flags */ | 483 | /* show the device flags */ |
485 | if (pos < buffer + length) { | 484 | SPRINTF(" Quirks:"); |
486 | pos += sprintf(pos, " Quirks:"); | ||
487 | 485 | ||
488 | #define US_FLAG(name, value) \ | 486 | #define US_FLAG(name, value) \ |
489 | if (us->fflags & value) pos += sprintf(pos, " " #name); | 487 | if (us->fflags & value) seq_printf(m, " " #name); |
490 | US_DO_ALL_FLAGS | 488 | US_DO_ALL_FLAGS |
491 | #undef US_FLAG | 489 | #undef US_FLAG |
492 | 490 | seq_putc(m, '\n'); | |
493 | *(pos++) = '\n'; | 491 | return 0; |
494 | } | ||
495 | |||
496 | /* | ||
497 | * Calculate start of next buffer, and return value. | ||
498 | */ | ||
499 | *start = buffer + offset; | ||
500 | |||
501 | if ((pos - buffer) < offset) | ||
502 | return (0); | ||
503 | else if ((pos - buffer - offset) < length) | ||
504 | return (pos - buffer - offset); | ||
505 | else | ||
506 | return (length); | ||
507 | } | 492 | } |
508 | 493 | ||
509 | /*********************************************************************** | 494 | /*********************************************************************** |
@@ -548,7 +533,8 @@ struct scsi_host_template usb_stor_host_template = { | |||
548 | /* basic userland interface stuff */ | 533 | /* basic userland interface stuff */ |
549 | .name = "usb-storage", | 534 | .name = "usb-storage", |
550 | .proc_name = "usb-storage", | 535 | .proc_name = "usb-storage", |
551 | .proc_info = proc_info, | 536 | .show_info = show_info, |
537 | .write_info = write_info, | ||
552 | .info = host_info, | 538 | .info = host_info, |
553 | 539 | ||
554 | /* command interface -- queued only */ | 540 | /* command interface -- queued only */ |