[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH V3 2/6] libxl_read_file_contents: fix reading sysfs file

Sysfs file has size=4096 but actual file content is less than that.
Current libxl_read_file_contents will treat it as error when file size
and actual file content differs, so reading sysfs file content with
this function always fails. Fix it so that we can reuse this function
to get sysfs file content in later pvusb work.

Signed-off-by: Chunyan Liu <cyliu@xxxxxxxx>
 tools/libxl/libxl_utils.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/tools/libxl/libxl_utils.c b/tools/libxl/libxl_utils.c
index 9053b27..18ad2b8 100644
--- a/tools/libxl/libxl_utils.c
+++ b/tools/libxl/libxl_utils.c
@@ -363,12 +363,9 @@ int libxl_read_file_contents(libxl_ctx *ctx, const char 
         if (!data) goto xe;
         rs = fread(data, 1, datalen, f);
-        if (rs != datalen) {
+        if (rs != datalen && !feof(f)) {
             if (ferror(f))
                 LOGE(ERROR, "failed to read %s", filename);
-            else if (feof(f))
-                LOG(ERROR, "%s changed size while we were reading it",
-                   filename);
             goto xe;

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.