<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>Hi ,</p>
    <p>I am trying to run controller case cpuset_load_balance on my
      Linux version 5.5.0</p>
    <p> with yocto. But I got many failures :</p>
    <font size="-1"><<<test_start>>><br>
      tag=cpuset_load_balance stime=1580819970<br>
      cmdline="cpuset_load_balance_test.sh"<br>
      contacts=""<br>
      analysis=exit<br>
      <<<test_output>>><br>
      cpuset_load_balance 1 TINFO: general group load balance test<br>
      cpuset_load_balance 1 TINFO: root group info:<br>
      cpuset_load_balance 1 TINFO: sched load balance: 0<br>
      cpuset_load_balance 1 TINFO: general group info:<br>
      cpuset_load_balance 1 TINFO: cpus: -<br>
      cpuset_load_balance 1 TINFO: sched load balance: 1<br>
      <b>cpuset_load_balance 1 TFAIL: load balance test failed.</b><br>
      cpuset_load_balance 3 TINFO: general group load balance test<br>
      cpuset_load_balance 3 TINFO: root group info:<br>
      cpuset_load_balance 3 TINFO: sched load balance: 0<br>
      cpuset_load_balance 3 TINFO: general group info:<br>
      .......<br>
      cpuset_load_balance 25 TINFO: general group2 info:<br>
      cpuset_load_balance 25 TINFO: cpus: 1,3<br>
      cpuset_load_balance 25 TINFO: sched load balance: 1<br>
      cpuset_load_balance 25 TINFO: CPU hotplug: online<br>
      smpboot: CPU 1 is now offline<br>
      x86: Booting SMP configuration:<br>
      smpboot: Booting Node 0 Processor 1 APIC 0x2<br>
      c<b>puset_load_balance 25 TFAIL: load balance test failed.</b><br>
      <<<execution_staLTP: starting cpuset_hotplug
      (cpuset_hotplug_test.sh)<br>
      tus>>><br>
      initiation_status="ok"<br>
      duration=410 termination_type=exited termination_id=1 corefile=no<br>
      cutime=251 cstime=1188<br>
      <<<test_end>>></font>
    <p><br>
    </p>
    <p>And I tried to analyse the source code for the reason, but didn't
      get it.  <br>
    </p>
    <p>That what I found with the file cpuset_load_balance_test.sh as
      below:</p>
    <font size="-1">general_load_balance_test1()<br>
      {</font><br>
    <font size="-1">........</font><font size="-1"><br>
      <br>
          # start to fork the child processes</font><br>
    <font size="-1"><font size="-1"><b> /*</b></font><font size="-1"><b><font
            size="-1"><b>(line</b>:108</font>) The fork works rightly
          */ </b></font><br>
    </font><br>
    <font size="-1">    /bin/kill -s SIGUSR1 $pid 2>
      $CPUSET_TMP/stderr                   <b> </b></font><font
      size="-1"><br>
          if [ $? -ne 0 ]; then<br>
              cpuset_log_error $CPUSET_TMP/stderr<br>
              tst_resm TFAIL "send the signal to fork the child tasks "
      \<br>
                     "failed."<br>
              /bin/kill -s SIGKILL $pid<br>
              return 1<br>
          fi<br>
      <br>
          read fifo < ./myfifo<br>
          if [ $fifo -ne 0 ]; then<br>
              cpuset_log_error $CPUSET_TMP/cpu-hog_stderr<br>
              tst_resm TFAIL "forking test tasks failed"<br>
              return 1<br>
          fi<br>
      <br>
    </font><font size="-1">    # start to run the child processes</font><br>
    <font size="-1"><font size="-1"><b> /*(line:135)Something is wrong
          here. After the signal sent out, the child processes all
          become zombies*/</b></font></font><br>
    <font size="-1">    /bin/kill -s SIGUSR1 $pid 2>
      $CPUSET_TMP/stderr             </font><br>
    <font size="-1">    if [ $? -ne 0 ]; then</font><br>
    <font size="-1">        cpuset_log_error $CPUSET_TMP/stderr</font><br>
    <font size="-1">        tst_resm TFAIL "send the signal to run the
      child tasks " \</font><br>
    <font size="-1">               "failed."</font><br>
    <font size="-1">        /bin/kill -s SIGUSR2 $pid</font><br>
    <font size="-1">        return 1</font><br>
    <font size="-1">    fi</font><br>
    <b><font size="-1">/*(line:143) Something is wrong here. wait
        returns value 1*/</font></b><br>
    <font size="-1">wait $pid</font><br>
    <font size="-1">...........</font><br>
    }<br>
    <p>Then I saw the file cpuset_cpu_hog.c for the zombies proccess
      with gdb. It seems</p>
    <p>cpuset_cpusetofpid func(line:190) failed. But I didn't konw more
      about these cpuset</p>
    <p>func.</p>
    <p>Have you met problems about cpuset_load_balance like this?</p>
    <p><br>
    </p>
    <p>Thanks!</p>
    <p>Yanfei,<br>
    </p>
    <p><br>
    </p>
  </body>
</html>