Displaying 5 results from an estimated 5 matches for "blk_shift".
2013 Oct 18
0
[RFC/PATCH 3/3] Wire up MultiFS support.
...portant stuff to get the MultiFS support working.
+ */
+static struct fs_info *get_fs_info(const char **path)
+{
+ const struct fs_ops **ops;
+ struct fs_info *fsp;
+ struct disk_info diskinfo;
+ struct part_iter *iter = NULL;
+ struct device *dev = NULL;
+ void *private;
+ int blk_shift = -1;
+ uint8_t disk_devno, hdd, partition;
+
+ if (parse_multifs_path(path, &hdd, &partition)) {
+ printf("MultiFS: Syntax invalid: %s\n", *path);
+ return NULL;
+ }
+
+ fsp = get_fs(hdd, partition - 1);
+ if (fsp)
+ return fsp;
+
+ fsp = malloc(sizeof(st...
2015 Jul 22
13
[PULL 0/8] MultiFS suppport for BIOS and EFI
So last week I was wondering if XFS was still working -- even with its
last on-disk structure changes -- and it _suprisingly_ worked as
expected. Right, now I can finally get rid of GRUB and use Syslinux to
boot my Linux on EFI from a rootfs with xfs. Shit, I have two
partitions (the first one being the required ESP) so there is no way to
access the other partitions since because Syslinux does not
2013 Dec 26
0
[PATCH] core: Avoid initializing the cache more than once
...tialize the cache */
- if (fs.fs_dev && fs.fs_dev->cache_data)
+ /* initialize the cache only if it wasn't already initialized
+ * by the fs driver */
+ if (fs.fs_dev && fs.fs_dev->cache_data && !fs.fs_dev->cache_init)
cache_init(fs.fs_dev, blk_shift);
/* start out in the root directory */
diff --git a/core/include/fs.h b/core/include/fs.h
index 31ef315..1062893 100644
--- a/core/include/fs.h
+++ b/core/include/fs.h
@@ -130,6 +130,7 @@ struct device {
struct disk *disk;
/* the cache stuff */
+ uint8_t cache_init; /* cache...
2012 Aug 20
13
[PATCH 00/12] Multidisk support
Hello,
the following patches should get multidisk access working.
The syntax accepted is the following:
(hdx,y)/path/to/file
where x is the disk number and start at 0 and the y is the partition number starting at 1. So (hd0,1) is the first partition of the first disk.
the other accepted syntax is using MBR's 32 bits disk signature so for example:
(mbr:0x12345678,2)/foo/bar
would address
2013 Oct 18
1
[RFC/PATCH 2/3] core: MultiFS infrastructure added.
...le->fs);
filedata->handle = rv;
+ restore_fs();
+ restore_chdir_start();
+
return rv;
}
@@ -395,6 +406,7 @@ void fs_init(const struct fs_ops **ops, void *priv)
/* Default name for the root directory */
fs.cwd_name[0] = '/';
+ p_ops = ops;
while ((blk_shift < 0) && *ops) {
/* set up the fs stucture */
@@ -420,7 +432,7 @@ void fs_init(const struct fs_ops **ops, void *priv)
while (1)
;
}
- this_fs = &fs;
+ root_fs = this_fs = &fs;
/* initialize the cache */
if (fs.fs_dev && fs.fs_dev->cache_data...