On Tue, Jan 13, 2015 at 01:36:56PM +0100, Pino Toscano wrote:
On Monday 12 January 2015 09:37:36 Hu Tao wrote:
> On Wed, Jan 07, 2015 at 01:25:50PM +0100, Pino Toscano wrote:
> > In data venerdì 26 dicembre 2014 16:17:46, Hu Tao ha scritto:
> > > Signed-off-by: Hu Tao <hutao(a)cn.fujitsu.com>
> > > ---
> > > daemon/btrfs.c | 24 ++++++++++++++++++++++++
> > > generator/actions.ml | 14 ++++++++++++++
> > > src/MAX_PROC_NR | 2 +-
> > > 3 files changed, 39 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/daemon/btrfs.c b/daemon/btrfs.c
> > > index 79de539..de20bc3 100644
> > > --- a/daemon/btrfs.c
> > > +++ b/daemon/btrfs.c
> > > @@ -1375,3 +1375,27 @@ do_btrfs_scrub (const char *path)
> > >
> > > return 0;
> > > }
> > > +
> > > +int
> > > +do_btrfs_check (const char *device)
> > > +{
> > > + const size_t MAX_ARGS = 64;
> > > + const char *argv[MAX_ARGS];
> > > + size_t i = 0;
> > > + CLEANUP_FREE char *err = NULL;
> > > + CLEANUP_FREE char *out = NULL;
> > > + int r;
> > > +
> > > + ADD_ARG (argv, i, str_btrfs);
> > > + ADD_ARG (argv, i, "check");
> > > + ADD_ARG (argv, i, device);
> > > + ADD_ARG (argv, i, NULL);
> > > +
> > > + r = commandv (&out, &err, argv);
> > > + if (r == -1) {
> > > + reply_with_error ("%s: %s", device, err);
> > > + return -1;
> > > + }
> > > +
> > > + return 0;
> > > +}
> >
> > We do have already a "fsck" action; OTOH fsck.btrfs does nothing, so
> > I would rather call `btrfs check` there, instead of adding a new
> > btrfs-specific API.
> > Let's make our fsck useful on btrfs :)
>
> I found btrfs_fsck has been already implemented. Do you mean we should
> extend btrfs to support btrfs?
I guess you mean "... extend fsck to support btrfs", right? :)
Yes, I had "extend fsck" in mind but...
That could be an idea, but given that "btrfs check" may usually need
additional parameter, then it might not be worth it.
Okay.
Regards,
Hu