search for: block_t

Displaying 15 results from an estimated 15 matches for "block_t".

Did you mean: block_r
2014 Feb 20
2
[PATCH] NTFS: fragmented $MFT file was not handled
...am, uint32_t *offset, uint8_t *attr_len, struct mapping_chunk *chunk); /*** Function definitions */ @@ -176,127 +180,116 @@ out: return -1; } -static struct ntfs_mft_record *ntfs_mft_record_lookup_3_0(struct fs_info *fs, - uint32_t file, block_t *blk) +/* AndyAlex: read and validate single MFT record. Keep in mind that MFT itself can be fragmented */ +static struct ntfs_mft_record *ntfs_mft_record_lookup_any(struct fs_info *fs, + uint32_t file, block_t *out_blk, bool is_v31) { cons...
2015 Jul 18
1
[PATCH 1/2] xfs: rename xfs_is_valid_magicnum to xfs_is_valid_sb
xfs_is_valid_magicnum is not actually a generic function that checks for magic numbers, instead it checks only for superblock's one. Signed-off-by: Paulo Alcantara <pcacjr at zytor.com> --- core/fs/xfs/xfs.c | 13 +++++-------- core/fs/xfs/xfs.h | 19 ++++++++++--------- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/core/fs/xfs/xfs.c b/core/fs/xfs/xfs.c index
2015 Dec 15
8
[PATCH] xfs: Add support for v3 directories
...t_irec_get(&rec, (xfs_bmbt_rec_t *)&core->di_literal_area[0] + - XFS_PVT(inode)->i_cur_extent++); + bmbt_irec_get(&rec, (xfs_bmbt_rec_t *)XFS_DFORK_PTR(core, + XFS_DATA_FORK) + + XFS_PVT(inode)->i_cur_extent); + XFS_PVT(inode)->i_cur_extent++; bno = fsblock_to_bytes(fs, rec.br_startblock) >> BLOCK_SHIFT(fs); @@ -130,7 +135,7 @@ static int xfs_next_extent(struct inode *inode, uint32_t lstart) } else if (core->di_format == XFS_DINODE_FMT_BTREE) { xfs_debug("XFS_DINODE_FMT_BTREE"); index = XFS_PVT(inode)->i_cu...
2013 Mar 02
0
[GIT-PULL] ext4 inline data support
...e/fs/ext2/bmap.c +++ b/core/fs/ext2/bmap.c @@ -10,6 +10,7 @@ #include <fs.h> #include <disk.h> #include <cache.h> +#include "assert.h" #include "ext2_fs.h" static const struct ext4_extent_header * @@ -178,7 +179,6 @@ bmap_traditional(struct inode *inode, block_t block, size_t *nblocks) return 0; } - /** * Map the logical block to physic block where the file data stores. * In EXT4, there are two ways to handle the map process, extents and indirect. @@ -203,7 +203,6 @@ block_t ext2_bmap(struct inode *inode, block_t block, size_t *nblocks) r...
2014 May 29
0
[PATCH 2/2] core/fs: Add support for Unix File system 1/2.
..., index, UFS_SB(fs)->addr_shift); + } + + return scan_set_nblocks(blk, index, UFS_SB(fs)->addr_shift, + addr_count - index, nblocks); +} + +/* + * Handle the traditional block map, like indirect, double indirect + * and triple indirect + */ +uint64_t ufs_bmap (struct inode *inode, block_t block, size_t *nblocks) +{ + uint32_t shft_per_blk, ptrs_per_blk; + static uint32_t indir_blks, double_blks, triple_blks; + struct fs_info *fs = inode->fs; + + /* Initialize static values */ + if (!indir_blks) { + shft_per_blk = fs->block_shift - UFS_SB(fs)->addr_shift; + pt...
2013 Jul 12
1
[PATCH 001/001] core/fs: Add support to Unix File system 1/2.
..., index, UFS_SB(fs)->addr_shift); + } + + return scan_set_nblocks(blk, index, UFS_SB(fs)->addr_shift, + addr_count - index, nblocks); +} + +/* + * Handle the traditional block map, like indirect, double indirect + * and triple indirect + */ +uint64_t ufs_bmap (struct inode *inode, block_t block, size_t *nblocks) +{ + uint32_t shft_per_blk, ptrs_per_blk; + static uint32_t indir_blks, double_blks, triple_blks; + struct fs_info *fs = inode->fs; + + /* Initialize static values */ + if (!indir_blks) { + shft_per_blk = fs->block_shift - UFS_SB(fs)->addr_shift; + pt...
2012 Aug 02
0
[PATCH 3/3] ALPHA: implement and use rdwr_bytes
...turn done; + } else { + memcpy(buf, core_xfer_buf, len); + } + done += len; + } + + return done; +} + struct edd_disk_params { uint16_t len; uint16_t flags; @@ -292,9 +366,7 @@ static inline bool is_power_of_2(uint32_t x) void getoneblk(struct disk *disk, char *buf, block_t block, int block_size) { - int sec_per_block = block_size / disk->sector_size; - - disk->rdwr_sectors(disk, buf, block * sec_per_block, sec_per_block, 0); + rdwr_bytes(disk, buf, (bytes_t)block * block_size, block_size, 0); } @@ -373,6 +445,8 @@ struct disk *disk_init(uint8_t d...
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
...e *file, char *buf, int sectors, + bool *have_more) +{ + return generic_getfssec(file, buf, sectors, have_more); +} + +static int xfs_next_extent(struct inode *inode, uint32_t lstart) +{ + struct fs_info *fs = inode->fs; + xfs_dinode_t *core = NULL; + xfs_bmbt_irec_t rec; + block_t bno; + xfs_bmdr_block_t *rblock; + int fsize; + xfs_bmbt_ptr_t *pp; + xfs_btree_block_t *blk; + uint16_t nextents; + block_t nextbno; + uint32_t index; + + (void)lstart; + + core = xfs_dinode_get_core(fs, inode->ino); + if (!core) { + xfs_error("Failed to get d...
2012 Sep 10
19
Initial support for sector size >512
This set of patches add some support for sector size >512. Currently it fixes extlinux, MBR for GPT and ext partitions. Other code is unaffected. This set of patches has been tested on a read Dell machine running a beta firmware.
2013 Oct 18
1
[RFC/PATCH 2/3] core: MultiFS infrastructure added.
...ct device *dev, int block_size_shift) { struct cache *prev, *cur; char *data = dev->cache_data; diff --git a/core/fs/diskio.c b/core/fs/diskio.c index 7d95d67..466b6a8 100644 --- a/core/fs/diskio.c +++ b/core/fs/diskio.c @@ -21,13 +21,27 @@ void getoneblk(struct disk *disk, char *buf, block_t block, int block_size) /* * Initialize the device structure. */ -struct device * device_init(void *args) +__export struct device *device_init(void *args) { - static struct device dev; + struct device *dev; - dev.disk = firmware->disk_init(args); - dev.cache_size = 128*1024; -...
2013 Mar 28
9
Rock Ridge. Was: Allowed code pages and encodings to write f0.txt through f1.txt?
Hi, i began to implement a common lookup function for SUSP and Rock Ridge entries: /* Obtain the payload bytes of all SUSP entries with a given signature. @param fs The data source from which to read CE blocks. @param dir_rec Memory containing the whole ISO 9660 directory record. @param sig Two characters of SUSP signature. E.g. "NM", "ER", ...
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
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