search for: iget_root

Displaying 12 results from an estimated 12 matches for "iget_root".

2011 Aug 02
1
Missing Error Condition Check in core/fs/fs.c
In 'core/fs/fs.c', 'fs.root' is set, but the 'iget_root' function pointer call might return a null pointer and we don't check for it. A symptom was that QEmu crashed as EIP landed outside of memory. - Shao /* start out in the root directory */ if (fs.fs_ops->iget_root) { fs.root = fs.fs_ops->iget_root(&fs);...
2013 Oct 18
0
[RFC/PATCH 3/3] Wire up MultiFS support.
...into hdd queue */ + if (add_fs(fsp, hdd, partition - 1)) + goto free_dev; + + /* initialize the cache */ + if (fsp->fs_dev && fsp->fs_dev->cache_data) + cache_init(fsp->fs_dev, blk_shift); + + /* start out in the root directory */ + if (fsp->fs_ops->iget_root) { + fsp->root = fsp->fs_ops->iget_root(fsp); + fsp->cwd = get_inode(fsp->root); + } + + return fsp; +free_dev: + free(dev->disk); + free(dev->cache_data); + free(dev); +bail: + free(fsp); + return NULL; +} + +/* + * Initialize MultiFS support...
2009 Oct 25
0
[fsc]Adding a generic path_lookup function in VFS
Hi hpa, I just added the generic path_lookup function for EXTLINUX. hpa, It changed a lot, so I want hear something from you. First , here is the main skeleton of the generic path_lookup function: > if (*name == '/') { > inode = this_fs->fs_ops->iget_root(); // The way to get the root > inode is different from different fs > while(*name == '/') > name++; > } else { > inode = this_inode; // pwd > } > parent = inode; > > while (*name) { > p =...
2013 Nov 19
2
[PATCH] Add filesystem UUID to SYSAPPEND for FAT
...readdir = iso_readdir, .next_extent = no_next_extent, + .fs_uuid = NULL, }; diff --git a/core/fs/ntfs/ntfs.c b/core/fs/ntfs/ntfs.c index f54df7e..6a983de 100644 --- a/core/fs/ntfs/ntfs.c +++ b/core/fs/ntfs/ntfs.c @@ -1385,4 +1385,5 @@ const struct fs_ops ntfs_fs_ops = { .iget_root = ntfs_iget_root, .iget = ntfs_iget, .next_extent = ntfs_next_extent, + .fs_uuid = NULL, }; diff --git a/core/fs/pxe/pxe.c b/core/fs/pxe/pxe.c index 4de4dbf..5efcd9c 100644 --- a/core/fs/pxe/pxe.c +++ b/core/fs/pxe/pxe.c @@ -695,4 +695,5 @@ const struct fs_ops...
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
2014 May 29
0
[PATCH 2/2] core/fs: Add support for Unix File system 1/2.
...->mtime = ufs_inode->m_time; + inode->blocks = ufs_inode->bytes_held >> fs->block_shift; + inode->flags = ufs_inode->flags; + memcpy(inode->pvt, ufs_inode->direct_blk_ptr, + sizeof(uint64_t) * UFS_NBLOCKS); + + return inode; +} + +/* + * Both ufs_iget_root and ufs_iget callback based on ufs type. + */ +static struct inode * +ufs_iget_root(struct fs_info *fs) +{ + return UFS_SB(fs)->ufs_iget_by_inr(fs, UFS_ROOT_INODE); +} + +static struct inode * +ufs_iget(const char *dname, struct inode *parent) +{ + const struct ufs_dir_entry *dir; + str...
2013 Jul 12
1
[PATCH 001/001] core/fs: Add support to Unix File system 1/2.
...->mtime = ufs_inode->m_time; + inode->blocks = ufs_inode->bytes_held >> fs->block_shift; + inode->flags = ufs_inode->flags; + memcpy(inode->pvt, ufs_inode->direct_blk_ptr, + sizeof(uint64_t) * UFS_NBLOCKS); + + return inode; +} + +/* + * Both ufs_iget_root and ufs_iget callback based on ufs type. + */ +static struct inode * +ufs_iget_root(struct fs_info *fs) +{ + return UFS_SB(fs)->ufs_iget_by_inr(fs, UFS_ROOT_INODE); +} + +static struct inode * +ufs_iget(const char *dname, struct inode *parent) +{ + const struct ufs_dir_entry *dir; + str...
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
2012 Jun 26
2
[GIT PULL] elflink bug fixes
...fat/fat.c @@ -779,7 +779,7 @@ static int vfat_fs_init(struct fs_info *fs) return fs->block_shift; } -int vfat_copy_superblock(void *buf) +static int vfat_copy_superblock(void *buf) { struct fat_bpb fat; struct disk *disk; @@ -821,4 +821,5 @@ const struct fs_ops vfat_fs_ops = { .iget_root = vfat_iget_root, .iget = vfat_iget, .next_extent = fat_next_extent, + .copy_super = vfat_copy_superblock, }; diff --git a/core/include/fs.h b/core/include/fs.h index 481e085..08ac738 100644 --- a/core/include/fs.h +++ b/core/include/fs.h @@ -72,6 +72,8 @@ struct fs_...
2014 May 29
3
[PATCH 0/2] UFS1/2 support series
From: Raphael S. Carvalho <raphael.scarv at gmail.com> Wrote the documentation below. I think it would be good to push the doc to the wiki as soon as the UFS support gets merged. Unix Fast File System (UFS/FFS) 1/2 on Syslinux - (usage/install) ----- There is a confusion about the name of this file system, then I decided to contact the author who replied: "The name has always been
2014 May 29
3
[PATCH v2 0/2] UFS1/2 support series
From: Raphael S. Carvalho <raphael.scarv at gmail.com> Change since v1: * Fix bug on dentry structure (thank you specification; btw, sarcasm), and consequently a bug on ufs_readdir. * Add readlink support (applied tests for symlinks whose destionation path were stored in blk pointers and the file itself). * Several improvements. Wrote the documentation below. I think it would be good to
2012 Sep 03
1
[GIT-PULL] XFS filesystem driver
...in xfs_next_extent() xfs: Add xfs_readlink() Paulo Alcantara (46): EXTLINUX: Initial XFS filesystem support mbr: Add support for loading VBRs from XFS filesystems xfs: Initial skeleton for XFS filesystem support xfs: Implement xfs_fs_init() function xfs: Add xfs_iget_root() to XFS filesystem ops xfs: Fix inode lookup in chunks of 64 inodes xfs: Add xfs_get_agi() function xfs: Fix inode size attribution xfs: Add xfs_iget() to filesystem ops xfs: Fix some inode number conversions xfs: Remove duplicate variable attribution xfs:...