diff options
author | Chris Larson <clarson@kergoth.com> | 2004-12-09 09:47:41 +0000 |
---|---|---|
committer | Chris Larson <clarson@kergoth.com> | 2004-12-09 09:47:41 +0000 |
commit | 2c5b8ec6d95cf68650265941530e5ce38c8dd6d9 (patch) | |
tree | bf879bea7ef8517ba8c3d1286ef300401d3d484c /linux-uml/linux-uml-2.4.26/12-hostfs.patch | |
parent | 101e2f1623def0a355d20aacb8bd93810703e834 (diff) |
Merge oe-devel@oe-devel.bkbits.net:openembedded
into hyperion.kergoth.com:/home/kergoth/code/openembedded
2004/12/09 03:39:39-06:00 kergoth.com!kergoth
Break people's builds again.. this time moving the packages into a packages/ subdir to clean things up a bit.
BKrev: 41b81f3dvlp3rU7_8MUXLcI8LDdDoA
Diffstat (limited to 'linux-uml/linux-uml-2.4.26/12-hostfs.patch')
-rw-r--r-- | linux-uml/linux-uml-2.4.26/12-hostfs.patch | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/linux-uml/linux-uml-2.4.26/12-hostfs.patch b/linux-uml/linux-uml-2.4.26/12-hostfs.patch deleted file mode 100644 index 124f975650..0000000000 --- a/linux-uml/linux-uml-2.4.26/12-hostfs.patch +++ /dev/null @@ -1,109 +0,0 @@ -diff -ru linux-2.4.26-1.orig/arch/um/fs/hostfs/externfs.c linux-2.4.26-1.hno/arch/um/fs/hostfs/externfs.c ---- linux-2.4.26-1.orig/arch/um/fs/hostfs/externfs.c Mon May 17 23:36:17 2004 -+++ linux-2.4.26-1.hno/arch/um/fs/hostfs/externfs.c Tue May 18 00:10:42 2004 -@@ -1133,7 +1133,7 @@ - if((mount_arg != NULL) && (*mount_arg != '\0')) - root = mount_arg; - -- return(uml_strdup(mount_arg)); -+ return(uml_strdup(root)); - } - - struct super_block *hostfs_read_super(struct super_block *sb, void *data, -diff -ru linux-2.4.26-1.orig/arch/um/fs/hostfs/host_file.c linux-2.4.26-1.hno/arch/um/fs/hostfs/host_file.c ---- linux-2.4.26-1.orig/arch/um/fs/hostfs/host_file.c Mon May 17 23:36:17 2004 -+++ linux-2.4.26-1.hno/arch/um/fs/hostfs/host_file.c Tue May 18 11:40:47 2004 -@@ -72,28 +72,21 @@ - { - char tmp[HOSTFS_BUFSIZE], *file; - int mode = 0, err; -+ struct openflags flags = OPENFLAGS(); - -- if(r && !w) -- mode = O_RDONLY; -- else if(!r && w) -- mode = O_WRONLY; -- else if(r && w) -- mode = O_RDWR; -- else { -- printk("Impossible mode in host_open_file - r = %d, w = %d", -- r, w); -- return(-EINVAL); -- } -- -+ if (r) -+ flags = of_read(flags); -+ if (w) -+ flags = of_write(flags); - if(append) -- mode |= O_APPEND; -+ flags = of_append(flags); - - err = -ENOMEM; - file = get_path(path, tmp, sizeof(tmp)); - if(file == NULL) - goto out; - -- err = open_filehandle(file, of_create(of_rdwr(OPENFLAGS())), mode, fh); -+ err = open_filehandle(file, flags, 0, fh); - out: - free_path(file, tmp); - return(err); -diff -ru linux-2.4.26-1.orig/arch/um/fs/hostfs/host_fs.c linux-2.4.26-1.hno/arch/um/fs/hostfs/host_fs.c ---- linux-2.4.26-1.orig/arch/um/fs/hostfs/host_fs.c Mon May 17 23:36:17 2004 -+++ linux-2.4.26-1.hno/arch/um/fs/hostfs/host_fs.c Tue May 18 11:38:51 2004 -@@ -111,10 +111,14 @@ - { - const char *path[] = { jail_dir, mount, file, NULL }; - int uid; -+ int gid; -+ int rc; - -+ /* These should be mount flags from an internal "superblock" */ - *uid_out = 0; -+ *gid_out = 0; - return(host_stat_file(path, dev_out, inode_out, mode_out, nlink_out, -- &uid, gid_out, size_out, atime_out, mtime_out, -+ &uid, &gid, size_out, atime_out, mtime_out, - ctime_out, blksize_out, blocks_out)); - } - -@@ -138,6 +142,12 @@ - goto out; - - err = host_open_file(path, 1, 1, fh); -+ if (err == -EISDIR) { -+ kfree(fh); -+ return NULL; -+ } -+ if (err == -EPERM) -+ err = host_open_file(path, 1, 0, fh); - if(err) - goto out_free; - -@@ -175,10 +185,9 @@ - len - ignore_end); - - out: -- if(err < 0) -- (*completion)(buf, err, arg); -- else err = 0; -- -+ (*completion)(buf, err, arg); -+ if (err > 0) -+ err = 0; - return(err); - } - -@@ -191,8 +200,9 @@ - - err = write_file(fh, offset + start, buf + start, len); - -- if(err < 0) -- (*completion)((char *) buf, err, arg); -+ (*completion)((char *) buf, err, arg); -+ if (err > 0) -+ err = 0; - return(err); - } - |