Re: [PATCH v2] xfs_io: support -c "open foo" command

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On Tue, Dec 6, 2016 at 12:15 AM, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
> On Mon, Dec 05, 2016 at 05:39:17PM +0200, Amir Goldstein wrote:
>> On Mon, Dec 5, 2016 at 5:26 PM, Eric Sandeen <sandeen@xxxxxxxxxxx> wrote:
>> > On 12/5/16 9:19 AM, Amir Goldstein wrote:
>> >> On Mon, Dec 5, 2016 at 4:19 PM, Eric Sandeen <sandeen@xxxxxxxxxxx> wrote:
>> >>> On 12/5/16 7:03 AM, Amir Goldstein wrote:
>> >>>> There is an undocumented and possibly unused feature in xfs_io
>> >>>> where all commands are executed per file in the file args list.
>> >>>>
>> >>>> This feature creates ambiguity when trying to execute commands
>> >>>> such as "open" and "file" from command line and result in an
>> >>>> endless loop in the command loop code.
>> >>>
>> >>> I may well be dense, but it's not immediately obvious what the
>> >>> old and/or problematic behavior is.  Can you spell it out a bit
>> >>> more?  What is an example of this loop?
>> >>
>> >> $ touch foo
>> >> $ xfs_io -c "open foo" foo
>> >>
>> >> you will see the shit storm
>> >
>> > ;)  Ok thanks.  (would be nice to have that in the changelog)
>> >
>>
>> Good point. I will add that.
>>
>>
>> >
>> > Given that neither the manpage nor the short help mention that more than
>> > one filename is accepted, should this even succeed at all?
>> >
>>
>> Make sense to me to fail on multiple file args.
>
> It doesn't to me.
>
> The fact that xfs_io has an open command, and it has
> commands that can act on multiple files (e.g. sendfile) indicate
> that it should be able to handle multiple files.
>
> Indeed, in interactive mode, the current file is really just an
> index into the stack of open files. It works exactly the same way as
> other XFS tools do with context stacks and accessed object rings
> (e.g. xfs_db). i.e. you only need to open the file/access the object
> once and then you can use the stack/ring to jump straight back to
> it. In this case, it's the xfs_io "file" command.
>
> i.e. xfs_io is intended to by able to operate on multiple files at
> once, and I do use that in interactive mode from time to time.
>
> What I haven't ever done is try to access that through the command
> line, so I didn't know it had this "command loop" iteration problem.
>
> It's the command loop iteration problem we need to fix, not neuter
> the multiple file capability of xfs_io.
>

OK, v4 it is.
For some reason you fail to spell out your idea of "fixing",
so I keep having to guess what you mean.
This time I am guessing that you mean:
- open all the files in args list (all using the same -r/-f flags)
- iterate all commands exactly once without implicitly changing "file"

Amir.
--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux