1. 16 Apr, 2007 1 commit
    • Mike Hibler's avatar
      Make sure exptidx gets properly recorded in the port_registration table. · b86a004b
      Mike Hibler authored
      Previously it was not being filled in and would wind up '0'.  Since it was
      part of the primary key along with the service, this basically meant that
      only one experiment at a time could successfully use the sync-server; i.e.,
      only one could have (0, 'emulab-syncd') as their primary key.
  2. 12 Apr, 2007 1 commit
    • Mike Hibler's avatar
      Fix an incorrect error return in a seldom used DB routine. · ae097403
      Mike Hibler authored
      Also, attempt reconnect once if DB access fails:
      >               /*
      >                * Try once to reconnect.  In theory, the caller (client)
      >                * will retry the tmcc call and we will reconnect and
      >                * everything will be fine.  The problem is that the
      >                * client may get a different tmcd process each time,
      >                * and every one of those will fail once before
      >                * reconnecting.  Hence, the client could wind up failing
      >                * even if it retried.
      >                */
  3. 04 Apr, 2007 1 commit
  4. 30 Mar, 2007 1 commit
  5. 26 Mar, 2007 3 commits
  6. 24 Mar, 2007 1 commit
  7. 23 Mar, 2007 2 commits
  8. 22 Mar, 2007 1 commit
  9. 16 Mar, 2007 1 commit
  10. 13 Mar, 2007 1 commit
  11. 12 Mar, 2007 2 commits
  12. 09 Mar, 2007 1 commit
  13. 08 Mar, 2007 1 commit
  14. 02 Mar, 2007 2 commits
  15. 01 Mar, 2007 1 commit
    • Leigh Stoller's avatar
      A change for Dave that we discussed a couple of months back and · 01cb437a
      Leigh Stoller authored
      yesterday Dave said he needs it now.
      Currently the accounts that are returned to ron nodes are determined
      by looking for the node type in the pcremote_ok slot of the projects
      table. There is no per-user subgroup setting; everyone gets the group
      of their project.
      Dave needs to be able to assign remote users to specific subgroups
      within a variety of projects, and I did not want to hack up the
      pcremote_ok mechanism any further. So, new way to do this, that might
      replace pcremote_ok at some point, but for now will just override it.
      I am using the node_attributes table to drive what groups get
      installed, and thus what users get accounts and a grouplist.
      	inset into node_attributes values
      	           ('ronXXX', "dp_projects", "10000,10001,...");
      where the group list is specified as a list of gid_idx's. This works
      out very nicely cause I can use a subquery and FIND_IN_SET clause, and
      so the changes to tmcd where actually pretty easy.
  16. 21 Feb, 2007 2 commits
  17. 19 Feb, 2007 1 commit
  18. 16 Feb, 2007 1 commit
    • Mike Hibler's avatar
      Hackery to make sure that Plab slices always have boss/ops in their hosts · 7d7c0999
      Mike Hibler authored
      file: we return info for boss/ops in the "hostnames" command, but only if
      the command would have otherwise returned something.
      This is because the default hosts file we distribute in the rootball already
      has boss/ops in it.  But if, during bootup, tmcd returns hostname info, that
      hosts file gets overwritten and boss/ops info gets lost.
      I could just grep out the info from the original hosts file and transfer it
      to the one we are building, but what do I grep for: "boss", "ops",
      "emulab.net"?  Don't really want to hardwire any of those in the client-side
      By returning this info via tmcd, I also don't have to modify the client-side
      and thus don't need to build a new rootball!
  19. 12 Feb, 2007 1 commit
  20. 02 Feb, 2007 1 commit
    • Mike Hibler's avatar
      The paint wasn't even dry on the last plab tarball before I have moved on... · c2570cfc
      Mike Hibler authored
      Rev 20 of the tarball has no new function, it is just slimmed down.
      I replaced our large statically linked binaries with dynamically linked ones.
      Also found and stripped a couple of other binaries.
      The resulting tarball goes from 5.7MB to 0.9MB.
      The Makefile changes are to incorporate the NOSTATIC=1 environment hack
      to enable building the dynamic binaries above.
  21. 29 Jan, 2007 1 commit
  22. 17 Jan, 2007 2 commits
  23. 16 Jan, 2007 1 commit
  24. 12 Jan, 2007 1 commit
  25. 11 Jan, 2007 2 commits
  26. 10 Jan, 2007 3 commits
  27. 09 Jan, 2007 2 commits
    • Mike Hibler's avatar
      Modify LOADINFO command to include ACPI info for FreeBSD images. · 789aedba
      Mike Hibler authored
      node_type_attributes can now include a row with attrkey=use_acpi which can
      either be set to:
        '1', if the FreeBSD image absolutely must use ACPI on this node_type
             in order to boot (e.g., our Dell SC440 machine)
        '0', if the FreeBSD image absolutely must NOT use ACPI on the node_type
             in order to boot (e.g., our pc2000s, possibly due to the IXP cards).
      Otherwise, just don't set this attribute.
      This value is queried by rc.frisbee and passed to slicefix after the disk
      is loaded so that it can change /boot/loader.conf to enable/disable ACPI.
      Note that ACPI (or lack thereof) has never been an issue with Linux or
      Windows, so this is only meaningful to FreeBSD >= 5.0.
      Note also that this does nothing for MFSes.  On machines that must use ACPI,
      you need to use a special MFS for that node type (set via 'adminmfs_osid'
      and 'diskloadmfs_osid' node_type_attributes).
    • Mike Hibler's avatar
      Frisbee MFS changes: · 346c0562
      Mike Hibler authored
       * support FreeBSD 6
       * client-side changes to support enable/disable of ACPI via slicefix
       * use dynamically linked Emulab binaries in frisbee MFS (for size)
  28. 27 Dec, 2006 1 commit
  29. 15 Dec, 2006 1 commit
    • Mike Hibler's avatar
      Attempt to reconcile the definition of some program-agent environment · 448e377b
      Mike Hibler authored
      variables on cluster and plab nodes.
      NODECNET (new)
      The fully-qualified (Emulab) name of the node this program agent is running on.
      This name resolves to the IP address of the control network interface
      of the node.
      NODECNETIP (new)
      The IP address of the control network interface.
      This address should not be advertised to, or used by, applications
      within an experiment as it will cause all traffic to flow over the control
      network rather than the experimental network.
      The unqualified name of the node this program agent is running on.
      For nodes with experimental interfaces,
      this name resolves to the IP address of an experimental interface on the node.
      For nodes with more than one experimental interface,
      there is no guarantee which one it will resolve to.
      For nodes with no experimental interfaces,
      the name will not resolve.
      The IP address of the experiment network interface that NODE resolves to.
      For nodes with no experimental interfaces, this variable will not be set.