Bug#838480: Next revision, suggestion accounted

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Bug#838480: Next revision, suggestion accounted

Dmitry Bogatov

control: tags -1 -moreinfo

Hello!

runit_2.1.2-9 in testing, and it:

 - Depends on getty-run, which means that user end up without tty
 - Provides `shutdown' and `reboot' scripts, which were tested via
   'fbpanel' buttons. Works correctly.

Is there anything else needed for inclusion into init's pre-depends?

--
X-Web-Site: https://sinsekvu.github.io | Note that I process my email in batch,
Accept-Languages: eo,ru,en             | at most once every 24 hours. If matter
Accept: text/plain, text/x-diff        | is urgent, you have my phone number.

attachment0 (836 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Bug#838480: Next revision, suggestion accounted

Martin Pitt-3
Hello Dmitry,

Dmitry Bogatov [2016-10-20 13:33 +0300]:
> runit_2.1.2-9 in testing, and it:
>
>  - Depends on getty-run, which means that user end up without tty

Not sure what "getty-run" is, but indeed I don't get a TTY. But I don't even
get that far. This is my current experience:

 * Standard vmdebootstrap install of sid.
 * Install runit-init, "do as I say!", reboot (that works)
 * Boot does that:

| - runit: $Id: 25da3b86f7bed4038b8a039d2f8e8c9bbcf0822b $: booting.
| - runit: enter stage: /etc/runit/1
| [ ok ] Starting hotplug events dispatcher: systemd-udevd.
| [....] Synthesizing the initial hotplug events...[    1.808644] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input4
| [    1.833381] parport_pc 00:04: reported by Plug and Play ACPI
| [    1.835655] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE]
| [    1.840339] ACPI: Power Button [PWRF]
| [    1.850222] systemd-udevd[375]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
| [    1.861449] sr 1:0:0:0: Attached scsi generic sg0 type 5
| [    1.872548] input: PC Speaker as /devices/platform/pcspkr/input/input5
| [    1.875268] 9pnet: Installing 9P2000 support
| [ ok [    1.927861] [drm] Found bochs VGA, ID 0xb0c0.
| [    1.929126] [drm] Framebuffer size 16384 kB @ 0xfd000000, mmio @ 0xfebd0000.
| [    1.938009] systemd-udevd[376]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
| done.
| [    1.961434] [TTM] Zone  kernel: Available graphics memory: 1022516 kiB
| [    1.963260] [TTM] Initializing pool allocator
| [    1.979965] [TTM] Initializing DMA pool allocator
| [....] Waiting for /dev to be fully populated...[    1.994500] ppdev: user-space parallel port driver
| [    2.009204] fbcon: bochsdrmfb (fb0) is primary device
| [    2.012962] Console: switching to colour frame buffer device 128x48
| [    2.024111] bochs-drm 0000:00:02.0: fb0: bochsdrmfb frame buffer device
| [    2.025381] [drm] Initialized bochs-drm 1.0.0 20130925 for 0000:00:02.0 on minor 0
| done.
| [ ok ] Activating swap...done.
| [    2.552988] EXT4-fs (vda1): re-mounted. Opts: errors=remount-ro
| [warn] Creating compatibility symlink from /etc/mtab to /proc/mounts. ... (warning).
| [ ok ] Activating lvm and md swap...done.
| [....] Checking file systems...fsck from util-linux 2.32.1
| done.
| [ ok ] Cleaning up temporary files... /tmp.
| [ ok ] Mounting local filesystems...done.
| [ ok ] Activating swapfile swap...done.
| [ ok ] Cleaning up temporary files....
| [ ok ] Starting Setting kernel variables: sysctl.
| [    2.863970] random: dd: uninitialized urandom read (512 bytes read)
| [ ok ] Configuring network interfaces...done.
| [ ok ] Cleaning up temporary files....
| [ ok ] Starting enhanced syslogd: rsyslogd.
| [ ok ] Starting ACPI services: acpid.
| [ ok ] Starting periodic command scheduler: cron.
| [....] Starting system message bus: dbus[    3.012871] random: dbus-daemon: uninitialized urandom read (12 bytes read)
| [    3.017986] random: dbus-daemon: uninitialized urandom read (12 bytes read)

  and hangs for 90s. Then it gets a tiny bit further:

| . ok
| [   93.081316] audit: type=1400 audit(1542390391.612:3): apparmor="DENIED" operation="mknod" profile="/usr/sbin/haveged" name="/run/hav0
| [ ok ] Starting SMP IRQ Balancer: irqbalance.
| [....] Starting OpenBSD Secure Shell server: sshd

And from here on, nothing. I can't log in through sshd, and there's no VT
either.

Admittedly I didn't do any RTFM, but IMHO this isn't a very friendly default
behaviour. You get locked out of your machine completely, only grub and init=
come to the rescue.

>  - Provides `shutdown' and `reboot' scripts, which were tested via
>    'fbpanel' buttons. Works correctly.

That does work now, at least immediately after installation. (Can't test on an
actual runit system). So, progress!

> Is there anything else needed for inclusion into init's pre-depends?

I wouldn't veto it, as the actual functionality for runit is not the
responsibility of the "init" metapackage. But I strongly recommend providing an
OOTB experience that gets a working system, before adding it as a pre-depends.
You should also ensure that this stays so by creating an autopkgtest that
installs runit, reboots, and makes sure that at least ssh and getty come up,
and runlevel is 2 (or 3, i. e. not S). This will ensure that this works on a
standard system, cover other architectures, and also prevent future
regressions.

Thank you!

Martin

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Bug#838480: Next revision, suggestion accounted

Dmitry Bogatov-3

[2018-11-16 18:55] Martin Pitt <[hidden email]>
> Not sure what "getty-run" is, but indeed I don't get a TTY. But I don't even
> get that far. This is my current experience:
>
>  * Standard vmdebootstrap install of sid.
>  * Install runit-init, "do as I say!", reboot (that works)
>  * Boot does that:
> [...]
> And from here on, nothing. I can't log in through sshd, and there's no VT
> either.

Okay, let us debug.

 $ sudo vmdebootstrap --image debian-838480.img --size 15G --distribution sid

 Warning: The image may fail to boot with ext4 and extlinux unless
 vmdebootstrap is running on Jessie. Use grub or ext3 and see the docs.

 $ sudo chown $USER:$USER debian-838480.img
 $ /usr/share/vmdebootstrap/qemu-wrapper.sh debian-838480.img amd64
   VNC server running on ::1:5900
 ## Now I get on VM 'Booting from Hard Disk...', things do not move
 ## further.

I believe here I hit this warning. I do not have Jessie box. So let me
go another way. I will make fresh installation.

 $ qemu-img create -fqcow2 img/debian-838480.qcow2 15G
 Formatting 'debian-838480.qcow2', fmt=qcow2 size=16106127360
 cluster_size=65536 lazy_refco
 unts=off refcount_bits=16

 $ qemu-system-x86_64 -m256 -enable-kvm -hda img/debian-838480.qcow2 \
   -cdrom iso/debian-9.5.0-amd 64-netinst.iso
 ## The most basic installation. Guided partition, no seperate
 ## partitions for /home,/var/,/tmp
 ##
 ## Only "standard system utilities" are installed.
 ## Now on virtual machine.

 # -- enable sid --
 # apt-get update
 # apt-get dist-upgrade
 # apt-get install runit-init=2.1.2-18
 # reboot

`dbus' starts slowly, otherwise things are fine.

After some stracing, I discovered that dbus was trying to recvmsg(1)
from /run/dbus/system_bus_socket. Resource was not available, so dbus
tried to poll with 90 sec timeout. After purging `systemd', this issue
with dbus is gone. I think somewhere `dbus' makes wrong assumption,

  `systemd' is installed => `systemd' is init system

So far, I still insist on adding `runit-init' into Pre-Depends of
`init'. I works for me, it works for bug reporters of src:runit, and it
would be great for it to have better visibility.

Reply | Threaded
Open this post in threaded view
|

Bug#838480: Next revision, suggestion accounted

Dmitry Bogatov-3
In reply to this post by Martin Pitt-3

[2018-11-16 18:55] Martin Pitt <[hidden email]>

> Hello Dmitry,
>
> Dmitry Bogatov [2016-10-20 13:33 +0300]:
> > runit_2.1.2-9 in testing, and it:
> >
> >  - Depends on getty-run, which means that user end up without tty
>
> Not sure what "getty-run" is, but indeed I don't get a TTY. But I don't even
> get that far. This is my current experience:
>
>  * Standard vmdebootstrap install of sid.
>  * Install runit-init, "do as I say!", reboot (that works)

Hi! Maybe you could export VM image or something like this?

I am worried: freeze is coming, and nothing is happening. I am not going
to miss another release.

Reply | Threaded
Open this post in threaded view
|

Bug#838480: Next revision, suggestion accounted

Dmitry Bogatov-3

[2018-11-28 18:48] Dmitry Bogatov <[hidden email]>
> I am worried: freeze is coming, and nothing is happening. I am not going
> to miss another release.

Hereby I inform you, that I uploaded NMU into DELAYED/15. Feel free to
cancel it, providing rationale why it is not "reasonable".

Quoting from TC (#746715):

        [... ] That includes merging reasonable contributions, and not
        reverting existing support without a compelling reason. [...]

Reply | Threaded
Open this post in threaded view
|

Bug#838480: Next revision, suggestion accounted

Michael Biebl-3
Am 04.12.18 um 00:26 schrieb Dmitry Bogatov:
>
> [2018-11-28 18:48] Dmitry Bogatov <[hidden email]>
>> I am worried: freeze is coming, and nothing is happening. I am not going
>> to miss another release.
>
> Hereby I inform you, that I uploaded NMU into DELAYED/15. Feel free to
> cancel it, providing rationale why it is not "reasonable".

For the record, given Martin's latest review I'm not ok with this NMU
and I would kindly ask you to cancel the upload until it has been
figured why it is failing. I feel uncomfortable adding a package as a
supported alternative in this state.

It's clear that you are unhappy with the situation, so am I.
Maybe we should involve the CTTE and have them work out and define the
criteria and interfaces an alternative /sbin/init needs to provide and
what behaviour can be expected or not (and have an automated test suite
which tests all this).


Regards,
Michael
--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?


signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Bug#838480: Next revision, suggestion accounted

Dmitry Bogatov-3

[2018-12-17 12:56] Michael Biebl <[hidden email]>
> Am 04.12.18 um 00:26 schrieb Dmitry Bogatov:
> >
> > [2018-11-28 18:48] Dmitry Bogatov <[hidden email]>
> >> I am worried: freeze is coming, and nothing is happening. I am not going
> >> to miss another release.
> >
> > Hereby I inform you, that I uploaded NMU into DELAYED/15. Feel free to
> > cancel it, providing rationale why it is not "reasonable".

> For the record, given Martin's latest review I'm not ok with this NMU
> and I would kindly ask you to cancel the upload until it has been
> figured why it is failing. I feel uncomfortable adding a package as a
> supported alternative in this state.

I politely refuse. Either you (I mean all of bin:init maintainers)
/actively/ take part in debugging issue you consider blocker, or you
step aside and let me deal with incoming stream of bugs.

I remind you, that you do not have veto right. The very fact, that
`init' is meta-package, not virtual package, is technical solution, not
instrument of power for bin:init maintainers.

> It's clear that you are unhappy with the situation, so am I.
> Maybe we should involve the CTTE and have them work out and define the
> criteria and interfaces an alternative /sbin/init needs to provide and
> what behaviour can be expected or not (and have an automated test suite
> which tests all this).

Sure. I will write draft summary of disagreement in a week or so into
this bug.

But until and unless CTTE overrules my decision, `runit-init' will be
installable without uninstalling essential packages, either as
pre-dependency of bin:init or as package, that provides `init'.