[Devel] Re: [RFC v9][PATCH 00/13] Kernel based checkpoint/restart

Serge E. Hallyn serue at us.ibm.com
Tue Nov 11 21:03:19 PST 2008


Quoting Oren Laadan (orenl at cs.columbia.edu):
> Checkpoint-restart (c/r): v9 adds support for multiple processes.
> (rebase to v2.6.28-rc3).
> 
> We'd like to see these make their way into -mm. All comments have
> been addressed in this version. Please pull at least the first 11
> patches, as they are similar to before.

With the trivial fix to patch 5 I sent earlier, I've been running the
following e2loop.sh for a few hours with no problems (the counter is at
2412).  Also did 500 concurrent checkpoints of the same process.

Oren, can you re-post an updated patch 5?

Andrew, would you mind (once Oren reposts patch 5) giving the
first 11 patches a chance in -mm?

thanks,
-serge

===============
e2loop.sh:
===============
cnt=1
/usr/src/ns_exec -m /root/e2 &
while [ 1 ]; do
        /usr/src/cr `pidof e2` o.$cnt
        kill -9 `pidof e2`
        echo 5 > /root/e2out
        cntin=`cat /root/e2out`
        echo "i reset e2out to $cntin"
        #/usr/src/rstr < /root/o.$cnt &
        /usr/src/ns_exec -m /usr/src/rstr /root/o.$cnt &
        cnt=$((cnt+1))
        sleep 10
        cntin=`cat /root/e2out`
        echo "cnt is $cnt, e2out has $cntin"
done

===============
e2.c:
===============
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>

int main()
{
	int cnt=0;
	FILE *f;
	char fnam[20];

	close(0); close(1); close(2); close(3);
	f = fopen("e2out", "r");
	if (!f)
		cnt = 1;
	else {
		fscanf(f, "%d", &cnt);
		fclose(f);
	}
	for (;;) {
		sleep(5);
		f = fopen("e2out", "w");
		if (!f)
			return 1;
		fprintf(f, "%d", ++cnt);
		fclose(f);
	}
	return 0;
}

_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list