Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 May 2010 18:31:32 -0700
From:      Garrett Cooper <yanefbsd@gmail.com>
To:        John Baldwin <jhb@freebsd.org>
Cc:        Marcelo/Porks <marcelorossi@gmail.com>, freebsd-current@freebsd.org, Jeff Roberson <jroberson@jroberson.net>
Subject:   Re: SUJ Changes
Message-ID:  <AANLkTimvXg6JGPPHczXWstDmSqmdoVCL5sOk4vgL8ymk@mail.gmail.com>
In-Reply-To: <201005271147.20155.jhb@freebsd.org>
References:  <alpine.BSF.2.00.1005171616390.1398@desktop> <201005270933.42760.jhb@freebsd.org> <AANLkTilQcxW02tav6LS86fUIxlDuaLPdtggmOqj6CDe1@mail.gmail.com> <201005271147.20155.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, May 27, 2010 at 8:47 AM, John Baldwin <jhb@freebsd.org> wrote:
> On Thursday 27 May 2010 10:13:38 am Marcelo/Porks wrote:
>> On Thu, May 27, 2010 at 10:33 AM, John Baldwin <jhb@freebsd.org> wrote:
>> > On Wednesday 26 May 2010 7:56:24 pm Garrett Cooper wrote:
>> >> On Wed, May 26, 2010 at 3:52 PM, Marcelo/Porks <marcelorossi@gmail.co=
m>
> wrote:
>> >> >
>> >> > Hi guys. I'm not sure if I could call this a problem but I can disa=
ble
>> >> > SU when SUJ is enabled, so SUJ will remain enabled and SU will be
>> >> > disabled.
>> >> >
>> >> > #tunefs -j enable /dev/device
>> >> > #tunefs -n disable /dev/device
>> >> >
>> >> > I did a patch for sbin/tunefs/tunefs.c that disable SUJ when the us=
er
>> >> > disable SU. Maybe this will be useful for some of you.
>> >> >
>> >> > Thanks.
>> >> >
>> >> >
>> >> > Index: sbin/tunefs/tunefs.c
>> >> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>> >> > --- sbin/tunefs/tunefs.c =A0 =A0 =A0 =A0(revision 208580)
>> >> > +++ sbin/tunefs/tunefs.c =A0 =A0 =A0 =A0(working copy)
>> >> > @@ -460,6 +460,14 @@
>> >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0if ((~sblock.fs_flag=
s & FS_DOSOFTDEP) =3D=3D
>> > FS_DOSOFTDEP)
>> >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0warn=
x("%s remains unchanged as
> disabled",
>> > name);
>> >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0else {
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 /* al=
so disable SUJ */
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 if ((=
sblock.fs_flags & FS_SUJ) =3D=3D
> FS_SUJ)
>> > {
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 warnx("soft updates journaling
>> >> > will be disabled too");
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 journal_clear();
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 sblock.fs_flags &=3D ~FS_SUJ;
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 sblock.fs_sujfree =3D 0;
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 warnx("remove .sujournal to
>> >> > reclaim space");
>> >> > + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 }
>> >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0sblo=
ck.fs_flags &=3D ~FS_DOSOFTDEP;
>> >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0warn=
x("%s cleared", name);
>> >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0}
>> >>
>> > I think that attempting to disable SU if SUJ
>> > is enabled should just fail with an error message. =A0The sysadmin can=
 then
>> > choose to disable both SUJ and SU if desired.
>>
>> If SU is disabled and One tries to enable SUJ then SU will be
>> automatically enabled.
>> So Why not automatically disable SUJ when One tries to disable SU?
>
> I'm probably not a big fan of either really. :) =A0For something as rarel=
y done
> as tunefs I would prefer to err on the side of caution and require the ad=
min
> to explicitly specify everything.

Yeah... I suppose that makes more functional sense.
-Garrett



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTimvXg6JGPPHczXWstDmSqmdoVCL5sOk4vgL8ymk>