1. 07 Dec, 2016 7 commits
  2. 06 Dec, 2016 1 commit
    • Mike Hibler's avatar
      Add the -B option to specify the "base" iocage to use. · fc02c625
      Mike Hibler authored
      This could make it easier in the future to try out different
      versions of the jail environment (e.g., FreeBSD 10.2 vs. 10.1)
      without manually tweaking a magic symlink in /iocage/tags.
      Also, document that you need to create the geni-lib mountpoint
      and may need to add some symlinks that are missing in newer
      FreeBSD packages.
  3. 02 Dec, 2016 2 commits
    • Leigh Stoller's avatar
      Remove order by clause in profile query, this causes mysql to use a · 1c211767
      Leigh Stoller authored
      filesort operation, which is a lot slower. And then we throw away the
      results of the sort anyway!
    • Leigh Stoller's avatar
      A couple of little tweaks to deal with slow login: · b2c05d9c
      Leigh Stoller authored
      1. Change initial query in instantiate.php to ask for just the few
         fields we need. Profiles have rspecs and scripts, and that is a lot
         of data to return, given that the average user has access to 300+
         profiles cause of all the ones marked public.
         But in general, there is a lot going on in instantiate.php, which is
         where most users are redirected to after login, and that causes a lot
         of delay.
      2. The MotherShip uses ZFS_NOEXPORT, so when logging in we have to see
         if we have to run exports_setup. exports_setup can take anywhere from
         5-25 seconds. The login path was forcing this once a day, but in fact
         exports_setup is using a week, so lets change the test to match that.
      3. Show a soothing modal after pressing the login button to keep the
         natives happy.
  4. 01 Dec, 2016 5 commits
  5. 30 Nov, 2016 5 commits
  6. 29 Nov, 2016 10 commits
  7. 28 Nov, 2016 7 commits
  8. 23 Nov, 2016 1 commit
  9. 22 Nov, 2016 1 commit
    • Mike Hibler's avatar
      Optimize the case of a "usermod -G" which changes only a few groups. · 9ab75810
      Mike Hibler authored
      The handling of group file changes via the -G option is abysmal.
      It creates a new copy of the installed group file on every group line
      changed, fsync'ing after the new copy is made. On top of that, it implements
      a new group list by first removing the user from all existing groups and then
      reading them to every group in the new list, thereby maximizing the number of
      group lines changed!
      On the Emulab mothership where, for example, the "geniuser" user is in
      some 450+ groups, adding them to a new group entailed changing 450+ lines
      twice, resulting in over 900 copies of the 2000 line group file being
      written. This took about 17 minutes.
      The change here is modest, just check where the group line needs to be
      changed or not before doing anything. In the case above, adding a single
      group for a user, we only write the group file once. This takes about 0.8
  10. 18 Nov, 2016 1 commit
    • Mike Hibler's avatar
      Hack dongle boot code to work in new !BOOTINFO_EVENTS world. · 18729d86
      Mike Hibler authored
      Since dongle boot does not PXE boot, we will not generate a PXEBOOTING
      event. We also were not generating SHUTDOWN events. So a typical case
      was that a wireless node would just straight from ISUP to BOOTING which
      is a case I now cleverly ignore so as not to start a reboot timer ticking
      if someone runs dhclient from their otherwise healthy node.
      Anyway, there has been a low-hanging-fruit update of the boot dongle to
      allow them to use subbosses for frisbee (otherwise they have to rely on
      flaky multicast from boss via the firewall), and to load an image with
      MBR3 (though newer Linux images don't work well because the FreeBSD 6.x
      on the dongle cannot mount a newer Linux root FS to "slicefix" it).