diff --git a/src/smf/smfd/SmfExecControl.cc b/src/smf/smfd/SmfExecControl.cc
index 64593215b..4db9b7292 100644
--- a/src/smf/smfd/SmfExecControl.cc
+++ b/src/smf/smfd/SmfExecControl.cc
@@ -119,8 +119,10 @@ void setBalancedExecLevel(const std::vector<std::string> nodesforss) {
       continue;
 
     bool ingroup = false;
+    // [Lennart] Why list and not vector?
     std::list<std::string> nodes;
     // Get the nodes the procedure will be installed on
+    // [Lennart] May return error (false). Error handling missing
     preCalculateNodeList(proc, nodes);
 
     for (auto node : nodes) {
@@ -131,6 +133,7 @@ void setBalancedExecLevel(const std::vector<std::string> nodesforss) {
     if (ingroup) {
       // This procedure is going to be part of a balanced upgrade
       merged.push_back(proc);
+      // [Lennart] Should set ingroup = false; here?
     }
   }
 
@@ -168,6 +171,9 @@ void setBalancedExecLevel(const std::vector<std::string> nodesforss) {
  * Args:
  *  - Procedure to calculate node list for
  *  - List of node names that the procedure will install on
+ * [Lennart] It is not always obvious that a parameter is an out-parameter
+ * If using out-parameters at all it should be documented in this function
+ * header comment
 */
 bool preCalculateNodeList(SmfUpgradeProcedure* procedure,
                           std::list<std::string>& nodes) {
