All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/6] xfs_io: fix up command iteration
@ 2016-12-16  4:41 Dave Chinner
  2016-12-16  4:41 ` [PATCH 1/6] libxcmd: check CMD_FLAG_GLOBAL inside args_command() Dave Chinner
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Dave Chinner @ 2016-12-16  4:41 UTC (permalink / raw)
  To: linux-xfs

Hi folks,

V2 of the xfs_io command iteration cleanup patch first posted here:

https://www.spinics.net/lists/linux-xfs/msg02696.html

No major code changes in this version - I've improved the man page
update documenting the iteration behaviour and cleaned up the typos
pointed out, but otherwise it is unchanged.

-Dave.

^ permalink raw reply	[flat|nested] 16+ messages in thread
* [PATCH 0/6] xfs_io: fix up command iteration
@ 2016-12-07  3:47 Dave Chinner
  2016-12-07  3:47 ` [PATCH 3/6] libxcmd: merge command() and iterate_command() Dave Chinner
  0 siblings, 1 reply; 16+ messages in thread
From: Dave Chinner @ 2016-12-07  3:47 UTC (permalink / raw)
  To: linux-xfs; +Cc: fstests, amir73il

Hi folks,

Here are teh changes I've put together to address the command
iteration problems that xfs_io is demonstrating. I described the
history that lead us to the current problems here:

https://www.spinics.net/lists/fstests/msg04572.html

This series cleans up the libxcmd command code and fixes the xfs_io
problems without completely removing the existing iteration
behaviour.

The first three patches address the "args_command" abstraction,
renaming it to a "command iterator" abstraction and clean up the
command loop implementation to make it easier to follow. It is now
clear that the the command loop has an external command iterator
control function, and it has a clean and clear mechanism for the
external commands to prevent iteration from occurring
(CMD_FLAG_ONESHOT).

The fourth patch cleans up a recent change made to the xfs_quota
interface to support foreign filesystems - it still needs to be abel
to run the help and quit commands regardless of other state. The
same requirement exists for xfs_io, it just implemented the command
check that allowed them to be run differently. This patch
centralises that by marking libxcmd functions as "library" functions
and skips the application provided command checking altogether.
Hence the apps no longer need to handle these cases at all.

The fifth patch makes all the xfs_io commands that shouldn't iterate
the file table one-shot only commands. This avoids all the nasty
problems with commands like open that end up completely filling
the open file table with thousands of filedescriptors pointing to
the same file. THis makes those commands usable and predictable.

Finally, the last patch adds CLI support for running xfs_io commands
as one-shot commands rather than iterating commands. This is useful
for being able to set up multiple files and operate on them as a
whole or individually as necessary. This patch also documents in the
man page that some commands may iterate all open files and that the
new "-C" command option can be used to avoid problems arising from
this historical behaviour.

-Dave.


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2016-12-21  9:38 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-16  4:41 [PATCH v2 0/6] xfs_io: fix up command iteration Dave Chinner
2016-12-16  4:41 ` [PATCH 1/6] libxcmd: check CMD_FLAG_GLOBAL inside args_command() Dave Chinner
2016-12-20  8:26   ` Christoph Hellwig
2016-12-16  4:41 ` [PATCH 2/6] libxcmd: rename args_command to command_iterator Dave Chinner
2016-12-20  8:27   ` Christoph Hellwig
2016-12-16  4:41 ` [PATCH 3/6] libxcmd: merge command() and iterate_command() Dave Chinner
2016-12-20  8:31   ` Christoph Hellwig
2016-12-20 20:11     ` Eric Sandeen
2016-12-21  9:38       ` Christoph Hellwig
2016-12-16  4:41 ` [PATCH 4/6] libxcmd: don't check generic library commands Dave Chinner
2016-12-20  8:34   ` Christoph Hellwig
2016-12-16  4:41 ` [PATCH 5/6] xfs_io: make various commands one-shot only Dave Chinner
2016-12-20  8:44   ` Christoph Hellwig
2016-12-16  4:41 ` [PATCH 6/6] libxcmd: add non-iterating user commands Dave Chinner
2016-12-16  6:39   ` Amir Goldstein
  -- strict thread matches above, loose matches on Subject: below --
2016-12-07  3:47 [PATCH 0/6] xfs_io: fix up command iteration Dave Chinner
2016-12-07  3:47 ` [PATCH 3/6] libxcmd: merge command() and iterate_command() Dave Chinner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.