diff -Nru mountall-2.13/configure mountall-2.14/configure --- mountall-2.13/configure 2010-04-19 08:17:06.000000000 +0100 +++ mountall-2.14/configure 2010-04-25 23:37:15.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.65 for mountall 2.13. +# Generated by GNU Autoconf 2.65 for mountall 2.14. # # Report bugs to . # @@ -703,8 +703,8 @@ # Identity of this package. PACKAGE_NAME='mountall' PACKAGE_TARNAME='mountall' -PACKAGE_VERSION='2.13' -PACKAGE_STRING='mountall 2.13' +PACKAGE_VERSION='2.14' +PACKAGE_STRING='mountall 2.14' PACKAGE_BUGREPORT='ubuntu-devel@lists.ubuntu.com' PACKAGE_URL='' @@ -1507,7 +1507,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures mountall 2.13 to adapt to many kinds of systems. +\`configure' configures mountall 2.14 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1577,7 +1577,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of mountall 2.13:";; + short | recursive ) echo "Configuration of mountall 2.14:";; esac cat <<\_ACEOF @@ -1717,7 +1717,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -mountall configure 2.13 +mountall configure 2.14 generated by GNU Autoconf 2.65 @@ -2327,7 +2327,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by mountall $as_me 2.13, which was +It was created by mountall $as_me 2.14, which was generated by GNU Autoconf 2.65. Invocation command line was $ $0 $@ @@ -4477,7 +4477,7 @@ # Define the identity of the package. PACKAGE='mountall' - VERSION='2.13' + VERSION='2.14' cat >>confdefs.h <<_ACEOF @@ -18083,7 +18083,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by mountall $as_me 2.13, which was +This file was extended by mountall $as_me 2.14, which was generated by GNU Autoconf 2.65. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -18149,7 +18149,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -mountall config.status 2.13 +mountall config.status 2.14 configured by $0, generated by GNU Autoconf 2.65, with options \\"\$ac_cs_config\\" diff -Nru mountall-2.13/configure.ac mountall-2.14/configure.ac --- mountall-2.13/configure.ac 2010-04-19 08:17:06.000000000 +0100 +++ mountall-2.14/configure.ac 2010-04-25 23:37:15.000000000 +0100 @@ -1,7 +1,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.62) -AC_INIT([mountall], [2.13], [ubuntu-devel@lists.ubuntu.com]) +AC_INIT([mountall], [2.14], [ubuntu-devel@lists.ubuntu.com]) AC_COPYRIGHT([[Copyright © 2010 Canonical Ltd.]]) AC_CONFIG_SRCDIR([src/mountall.c]) AC_CONFIG_MACRO_DIR([m4]) diff -Nru mountall-2.13/debian/changelog mountall-2.14/debian/changelog --- mountall-2.13/debian/changelog 2010-04-19 08:17:06.000000000 +0100 +++ mountall-2.14/debian/changelog 2010-04-25 23:37:15.000000000 +0100 @@ -1,3 +1,24 @@ +mountall (2.14) lucid; urgency=low + + [ Scott James Remnant ] + * Flush updates to Plymouth before emitting Upstart events, in case + the event kills Plymouth. LP: #559761. + * Don't mark a filesystem "nodev" just because it's got "none" in the + device column; this will block the "virtual-filesystems" event which + is the one that can't use Plymouth to prompt. LP: #507881. + * When cancelling in-progress fsck, don't deference the NULL mount + record. LP: #562811. + * mountall is missing a very important line of code that increases the + udev buffer size; without this it's possible we may miss events during + busy periods. LP: #561390. + + [ Steve Langasek ] + * If we're not marking all nodev filesystems as virtual, we need to + at least mark our placeholder filesystem entries (type=none && dev=none) + this way. + + -- Steve Langasek Sun, 25 Apr 2010 23:36:01 +0100 + mountall (2.13) lucid; urgency=low [ Scott James Remnant ] diff -Nru mountall-2.13/src/mountall.c mountall-2.14/src/mountall.c --- mountall-2.13/src/mountall.c 2010-04-19 08:17:07.000000000 +0100 +++ mountall-2.14/src/mountall.c 2010-04-25 23:37:17.000000000 +0100 @@ -1013,10 +1013,12 @@ continue; } - /* Otherwise If there's no device, it's implicitly - * nodev whether or not we know about the filesystem. + /* Otherwise if there's no device and the type is also "none", + * special-case it as a "nodev" virtual filesystem so our + * placeholder handling kicks in. */ - if (! strcmp (mnt->device, "none")) + if (! strcmp (mnt->device, "none") + && ! strcmp (mnt->type, "none")) mnt->nodev = TRUE; /* Drop anything with ignore as its type. */ @@ -2197,6 +2199,12 @@ if (no_events) return; + /* Flush the Plymouth connection to ensure all updates are sent, + * since the event may kill plymouth. + */ + if (ply_boot_client) + ply_boot_client_flush (ply_boot_client); + env = NIH_MUST (nih_str_array_new (NULL)); if (mnt) { @@ -3082,10 +3090,13 @@ break; case 'c': case 'C': - if (mnt->error != ERROR_FSCK_IN_PROGRESS) + /* mnt is always NULL since multiple fsck may be in + * progress. + */ + if (plymouth_error != ERROR_FSCK_IN_PROGRESS) break; - mnt->error = ERROR_NONE; + fsck_in_progress = FALSE; plymouth_update (FALSE); nih_message (_("User cancelled filesystem checks")); @@ -3095,6 +3106,8 @@ if (mnt->fsck_pid > 0) kill (mnt->fsck_pid, SIGTERM); + if (mnt->error == ERROR_FSCK_IN_PROGRESS) + mnt->error = ERROR_NONE; } break; default: @@ -3181,6 +3194,7 @@ nih_assert (udev_monitor = udev_monitor_new_from_netlink (udev, "udev")); nih_assert (udev_monitor_filter_add_match_subsystem_devtype (udev_monitor, "block", NULL) == 0); nih_assert (udev_monitor_enable_receiving (udev_monitor) == 0); + udev_monitor_set_receive_buffer_size (udev_monitor, 128*1024*1024); NIH_MUST (nih_io_add_watch (NULL, udev_monitor_get_fd (udev_monitor), NIH_IO_READ,