[RFC v14-rc][PATCH 04/23] General infrastructure for checkpoint restart

Serge E. Hallyn serue at us.ibm.com
Fri Mar 20 14:24:00 PDT 2009


Quoting Oren Laadan (orenl at cs.columbia.edu):
> Changelog[v14]:
>   - Define sys_checkpoint(0,...) as asking for a self-checkpoint (Serge)

Thanks.

>   - Revert use of 'pr_fmt' to avoid tainting whom includes us (Nathan Lynch)
>   - Explicitly indicate length of UTS fields in header
>   - Discard field 'h->parent'

Nice.

> +	uts = utsname();
> +	ret = cr_write_buffer(ctx, uts->release, __NEW_UTS_LEN);
> +	if (ret < 0)
> +		return ret;
> +	ret = cr_write_buffer(ctx, uts->version, __NEW_UTS_LEN);
> +	if (ret < 0)
> +		return ret;
> +	ret = cr_write_buffer(ctx, uts->machine, __NEW_UTS_LEN);

...

> +	/* FIX: verify compatibility of release, version and machine */
> +	ret = cr_read_obj_type(ctx, uts_buf, __NEW_UTS_LEN, CR_HDR_BUFFER);
> +	if (ret < 0)
> +		goto out;
> +	ret = cr_read_obj_type(ctx, uts_buf, __NEW_UTS_LEN, CR_HDR_BUFFER);
> +	if (ret < 0)
> +		goto out;
> +	ret = cr_read_obj_type(ctx, uts_buf, __NEW_UTS_LEN, CR_HDR_BUFFER);

The new_utsname fields actually have __NEW_UTS_LEN+1 chars.  So
if hostname happens to be full (__NEW_UTS_LEN chars plus a final
null), won't you end up without the trailing null here?

-serge


More information about the Containers mailing list