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

Bug#608428: schroot: [kfreebsd-*] cannot handle long (>= 14 chars) chroot names



Package: schroot
Version: 1.4.16-1
Severity: important

On kfreebsd-*, schroot is not able to unmount everything if chroot name is longer than 13 characters:

# schroot -c 123456789abcde echo Hello world
Hello world
E: 10mount: umount: unmount of /var/lib/schroot/mount/123456789abcde-e7de3ef4-e02c-430c-b9d9-0e4eb34f3bd0/dev/f failed: Invalid argument
E: 10mount: umount: unmount of /var/lib/schroot/mount/123456789abcde-e7de3ef4-e02c-430c-b9d9-0e4eb34f3bd0/dev failed: Device or resource busy
E: 10mount: umount: unmount of /var/lib/schroot/mount/123456789abcde-e7de3ef4-e02c-430c-b9d9-0e4eb34f3bd0 failed: Device or resource busy
E: 10mount: rmdir: failed to remove `/var/lib/schroot/mount/123456789abcde-e7de3ef4-e02c-430c-b9d9-0e4eb34f3bd0': Device or resource busy
E: 123456789abcde-e7de3ef4-e02c-430c-b9d9-0e4eb34f3bd0: Chroot setup failed: stage=setup-stop


If the name is longer than 18 characters, it cannot even run a command:

# schroot -c 123456789abcdefghij echo Hello world
E: 10mount: mount: dev : File name too long
E: 10mount: umount: unmount of /var/lib/schroot/mount/123456789abcdefghij-cf720545-3204-4bda-93a8-82bbd3ac46ca/ failed: Invalid argument
E: 10mount: umount: unmount of /var/lib/schroot/mount/123456789abcdefghij-cf720545-3204-4bda-93a8-82bbd3ac46ca/ failed: Invalid argument
E: 10mount: umount: unmount of /var/lib/schroot/mount/123456789abcdefghij-cf720545-3204-4bda-93a8-82bbd3ac46ca failed: Device or resource busy
E: 10mount: rmdir: failed to remove `/var/lib/schroot/mount/123456789abcdefghij-cf720545-3204-4bda-93a8-82bbd3ac46ca': Device or resource busy
E: 123456789abcdefghij-cf720545-3204-4bda-93a8-82bbd3ac46ca: Chroot setup failed: stage=setup-start


Given that e.g. sbuild-createchroot creates chroot named "$SUITE-kfreebsd-$CPU-sbuild" (which is >= 23 characters), this is quite an unfortunate limitation.

Also, please don't try my examples at home, because the only way to unmount stuff mounted by schroot seems to be: put SESSIONS_RECOVER="end" into /etc/default/schroot and reboot. :/

(debian-bsd@lists.debian.org CC-ed.)


-- System Information:
Debian Release: 6.0
  APT prefers unstable
  APT policy: (990, 'unstable')
Architecture: kfreebsd-i386 (i686)

Kernel: kFreeBSD 8.1-1-686
Locale: LANG=C, LC_CTYPE=pl_PL.UTF-8 (charmap=ANSI_X3.4-1968) (ignored: LC_ALL set to C)
Shell: /bin/sh linked to /bin/dash

Versions of packages schroot depends on:
ii  libboost-filesystem1.42.0     1.42.0-4   filesystem operations (portable pa
ii  libboost-program-options1.42. 1.42.0-4   program options library for C++
ii  libboost-regex1.42.0          1.42.0-4   regular expression library for C++
ii  libboost-system1.42.0         1.42.0-4   Operating system (e.g. diagnostics
ii  libc0.1                       2.11.2-7   Embedded GNU C Library: Shared lib
ii  libgcc1                       1:4.4.5-10 GCC support library
ii  liblockdev1                   1.0.3-1.4  Run-time shared library for lockin
ii  libpam0g                      1.1.1-6.1  Pluggable Authentication Modules l
ii  libstdc++6                    4.4.5-10   The GNU Standard C++ Library v3
ii  libuuid1                      2.17.2-5   Universally Unique ID library
ii  schroot-common                1.4.16-1   common files for schroot

schroot recommends no packages.

Versions of packages schroot suggests:
pn  aufs-modules | unionfs-module <none>     (no description available)
pn  btrfs-tools                   <none>     (no description available)
ii  debootstrap                   1.0.26     Bootstrap a basic Debian system
pn  lvm2                          <none>     (no description available)
pn  unzip                         <none>     (no description available)

--
Jakub Wilk



Reply to: