Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vmfs5 #6

Open
houmenghang opened this issue Mar 2, 2023 · 6 comments
Open

vmfs5 #6

houmenghang opened this issue Mar 2, 2023 · 6 comments

Comments

@houmenghang
Copy link

I have a vmfs5 parition that exceeds 50T and has a problem of "Segmentation fault". How should I operate vmfs-tools to support large-capacity partitioning

@weafon
Copy link
Owner

weafon commented Mar 2, 2023

can u provide the file 'core' or post the call stack of the segment fault extracted from core? thanks.

@houmenghang
Copy link
Author

houmenghang commented Mar 3, 2023

I used vmfs-fuse, so hopefully that's what you need,thanks
core.zip

@houmenghang
Copy link
Author

can u provide the file 'core' or post the call stack of the segment fault extracted from core? thanks.
I used vmfs-fuse, so hopefully that's what you need,thanks
https://github.com/weafon/vmfs6-tool/files/10878159/core.zip

@weafon
Copy link
Owner

weafon commented Mar 7, 2023

I used gdb to read the core you uploaded and get the following call stacks.
Would you like to try the branch vmfs6-64-init_pb_first ? You may encounter Issue #5 in the main branch.

[root@lab22 vmfs6-tool]# gdb vmfs-fuse/vmfs-fuse core.13780
.... ignored ....
#0 0x0000000000405f01 in vmfs_inode_aggregate_pb (inode=0x7fff16914dbc) at libvmfs/vmfs_inode.c:606
606 iobuffer_free(buf);
(gdb) bt
#0 0x0000000000405f01 in vmfs_inode_aggregate_pb (inode=0x7fff16914dbc) at libvmfs/vmfs_inode.c:606
#1 vmfs_inode_aggregate (inode=0x7fff16914dbc, pos=273481728) at libvmfs/vmfs_inode.c:627
#2 0x0000000000404695 in vmfs_file_pread (f=0x24af190, buf=0x200 <Address 0x200 out of bounds>, len=0, pos=273481728) at libvmfs/vmfs_file.c:218
#3 0x0000000000402cbf in vmfs_bitmap_alloc_item (bmp_entry=0x24aecb0, item=0x0) at libvmfs/vmfs_bitmap.c:272
#4 0x0000000000000000 in ?? ()

Let dump function vmfs_inode_aggregate_pb. Then, by gdb, we found fs->pbc is zero
static int vmfs_inode_aggregate_pb(vmfs_inode_t *inode)
{
const vmfs_fs_t *fs = inode->fs;
uint32_t pb_len;
uint64_t pb_blk;
uint32_t item,entry;
u_char *buf;
int i,res;

pb_len = fs->pbc->bmh.data_size;

(gdb) p fs->pbc
$6 = (vmfs_bitmap_t *) 0x0

@houmenghang
Copy link
Author

I used gdb to read the core you uploaded and get the following call stacks. Would you like to try the branch vmfs6-64-init_pb_first ? You may encounter Issue #5 in the main branch.

[root@lab22 vmfs6-tool]# gdb vmfs-fuse/vmfs-fuse core.13780 .... ignored .... #0 0x0000000000405f01 in vmfs_inode_aggregate_pb (inode=0x7fff16914dbc) at libvmfs/vmfs_inode.c:606 606 iobuffer_free(buf); (gdb) bt #0 0x0000000000405f01 in vmfs_inode_aggregate_pb (inode=0x7fff16914dbc) at libvmfs/vmfs_inode.c:606 #1 vmfs_inode_aggregate (inode=0x7fff16914dbc, pos=273481728) at libvmfs/vmfs_inode.c:627 #2 0x0000000000404695 in vmfs_file_pread (f=0x24af190, buf=0x200 <Address 0x200 out of bounds>, len=0, pos=273481728) at libvmfs/vmfs_file.c:218 #3 0x0000000000402cbf in vmfs_bitmap_alloc_item (bmp_entry=0x24aecb0, item=0x0) at libvmfs/vmfs_bitmap.c:272 #4 0x0000000000000000 in ?? ()

Let dump function vmfs_inode_aggregate_pb. Then, by gdb, we found fs->pbc is zero static int vmfs_inode_aggregate_pb(vmfs_inode_t *inode) { const vmfs_fs_t *fs = inode->fs; uint32_t pb_len; uint64_t pb_blk; uint32_t item,entry; u_char *buf; int i,res;

pb_len = fs->pbc->bmh.data_size;

(gdb) p fs->pbc $6 = (vmfs_bitmap_t *) 0x0

I have tried the vmfs_inode_aggregate_pb branch that you developed, but it does not seem to support vmfs5. So I would like to ask if modifying vmfs-fuse in vmfs-tools can solve my problem

@houmenghang
Copy link
Author

houmenghang commented Mar 8, 2023

Taking your advice, I changed the blkid2ino parameter in vmfs-fuse.c of vmfs-tools from uint32_t to uint64_t, and the error is the same
this is errors:
VMFS version: 5
VMFS: Unsupported version 5
Unable to open device/file "/dev/sda3".
Unable to open filesystem

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants