Bug#993602: /etc/runit/nosync should not have been moved to /run

2021-09-05 Thread Andras Korn
On Sat, Sep 04, 2021 at 05:38:50PM +0200, lorenzo wrote:

> > Not wanting to invoke sync() on shutdown is a permanent property of a
> > system, not an ephemeral one. Thus, the flag file for this behaviour
> > should be in a permanent location (like /etc/runit, where it
> > originally was), not under /run, where it would need to be created on
> > every boot.
> 
> The only issue with reverting to /etc is that as long as /etc is mounted
> readonly it will not be possible to write this file: but as the use
> case is a container I guess the file will be written during the
> container setup, before runtime, right?

Exactly. This isn't something you need to change at runtime, ever.

A case could even be made for runit to automatically skip sync in
containers, but considering runit's minimalist design, that'd be creeping
featurism.

Best regards,

András

-- 
  Ha a vasutallomas az, ahol a vasut megall, akkor a munkaallomas...



Bug#993602: /etc/runit/nosync should not have been moved to /run

2021-09-04 Thread lorenzo
On Fri, 3 Sep 2021 16:44:09 +0200
Andras Korn  wrote:

> Package: runit
> Version: 2.1.2-42
> Severity: normal
> 
> Hi,

Hi,

> 
> I'm the guy who originally submitted the patch to support a 'nosync'
> flag file to avoid syncing on shutdown.
> 
> I noted with some amazement in the changelog for version 2.1.2-42
> that this file had been moved to /run sometime in the past, with no
> mention in the changelog.

I think it happened by mistake when runit source was converted into the
debhelper format, see

https://salsa.debian.org/runit-team/runit/-/commit/c0066204fa930f3e57eb32a4cc28beed349658b2

https://salsa.debian.org/runit-team/runit/-/commit/c966a77f0414d4eadbed2cf36de726399f01106c

(and etc was already worded as 'erc' by some other mistake
happened previously but i stop digging at commit c0066204 )


> 
> I think this change should be reverted.

I Agree, will do that in the next upload.

> 
> The use case of the nosync flag file is when running runit in a
> container like LXC or linux-vserver. When you stop one of these (or
> hundreds of these simultaneously), you don't want them to sync()
> because the host itself isn't stopping, so there is neither a need
> nor a benefit to invoking sync().
> 
> Not wanting to invoke sync() on shutdown is a permanent property of a
> system, not an ephemeral one. Thus, the flag file for this behaviour
> should be in a permanent location (like /etc/runit, where it
> originally was), not under /run, where it would need to be created on
> every boot.

The only issue with reverting to /etc is that as long as /etc is mounted
readonly it will not be possible to write this file: but as the use
case is a container I guess the file will be written during the
container setup, before runtime, right?

> 
> Best regards,
> 
> András

Best Regards,
Lorenzo

> 
> -- System Information:
> Debian Release: 11.0
>   APT prefers unstable
>   APT policy: (350, 'unstable'), (350, 'stable'), (1, 'experimental')
> Architecture: amd64 (x86_64)
> Foreign Architectures: i386
> 
> Kernel: Linux 5.10.0-8-amd64 (SMP w/8 CPU threads)
> Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN,
> TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_US.UTF-8,
> LC_CTYPE=hu_HU.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 Shell:
> /bin/sh linked to /bin/bash Init: runit (via /run/runit.stopit)
> LSM: AppArmor: enabled
> 



Bug#993602: /etc/runit/nosync should not have been moved to /run

2021-09-03 Thread Andras Korn
Package: runit
Version: 2.1.2-42
Severity: normal

Hi,

I'm the guy who originally submitted the patch to support a 'nosync' flag
file to avoid syncing on shutdown.

I noted with some amazement in the changelog for version 2.1.2-42 that this
file had been moved to /run sometime in the past, with no mention in the
changelog.

I think this change should be reverted.

The use case of the nosync flag file is when running runit in a container
like LXC or linux-vserver. When you stop one of these (or hundreds of these
simultaneously), you don't want them to sync() because the host itself isn't
stopping, so there is neither a need nor a benefit to invoking sync().

Not wanting to invoke sync() on shutdown is a permanent property of a
system, not an ephemeral one. Thus, the flag file for this behaviour should
be in a permanent location (like /etc/runit, where it originally was), not
under /run, where it would need to be created on every boot.

Best regards,

András

-- System Information:
Debian Release: 11.0
  APT prefers unstable
  APT policy: (350, 'unstable'), (350, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-8-amd64 (SMP w/8 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=hu_HU.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8
Shell: /bin/sh linked to /bin/bash
Init: runit (via /run/runit.stopit)
LSM: AppArmor: enabled

-- 
  A computer's attention span is as long as it's power cord.