最新 | 最热门 | 最高评价

+0  Ext4 Workshop 2014

Tag: 文件系统 | ext4
刘, 铮 发于 2014年03月31日 10:09 | 点击: 1809 | 展开摘要
作者:刘峥

2014年3月26日,Napa Valley, CA.  今年LSF/MM Summit 2014会议就在这里举行,因此Ext4 Workshop相应的也就在这里了。会议内容主要是讨论后续一年Ext4文件系统的开发问题。

今年讨论的内容如下:

Data Block Checksums

Reflink

Encryption

Extent Cache Shrinker

Buffer_head Removal

SMR/Flash Device Optim

查看全文: http://www.udpwork.com/item/12036.html

+0  CLSF 2013讨论会纪要(一)

Tag: 文件系统 | ext4 | fsck | xfs
RobinDong 发于 2013年10月23日 15:17 | 点击: 2091 | 展开摘要
10月17日到18日两天在LSI上海办公室参加了 CLSF2013 讨论会。简要记录之,如有错误,欢迎拍砖。

第一天早上开场先是由LSI亚太区的总裁致辞欢迎大家,因为请来的几乎都是LSI的客户:华为、oracle、阿里、百度、腾讯等(其实还有竞争对手,比如fusionio:)。当然,LSI做为东道主不仅提供了场地还提供了中午饭,还真要谢谢人家。

先由Jeff Liu介绍去年xfs的进展。xfs去年最大的改动是加入了自描述的元数据,其实就是元数据的CRC校验,如果读取时发现

查看全文: http://www.udpwork.com/item/11009.html

+0  ext4磁盘碎片查看

Tag: 操作系统 | e2fsck | ext4 | filefrag
RobinDong 发于 2013年09月13日 15:33 | 点击: 7923 | 展开摘要
子团兄最近在测试ext4的bigalloc特性,cluster为256K,放入了16个大文件,每个文件25GB。反馈我说碎片很多,我觉得很奇怪便问是怎么看出来碎片多的,他说是用fsck看的:

#fsck.ext4 -f -y /dev/sdi1
e4fsck 1.42 (29-Nov-2011)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Ch

查看全文: http://www.udpwork.com/item/10672.html

+0  集群里机器hang住 备忘1

Tag: 工作故事 | delalloc | ext4 | mpt2sas
RobinDong 发于 2013年08月01日 16:35 | 点击: 2593 | 展开摘要
今天和刘毅同学一起研究了一下集群里机器hang住的现象。

所谓“hang住”,就是磁盘抽风(当然,也可能是sas/raid卡抽风),对发给它的io都不返回,造成许多访问它的进程都进入“D”状态,应用停止工作,等在read/write等系统调用上,严重的甚至终端命令都无法返回。

几个主要的场景都出现了ext4的报错:

EXT4-fs (sdx): delayed block allocation failed for inode 98838775 at logical o

查看全文: http://www.udpwork.com/item/10325.html

+0  先mkfs后写裸盘

Tag: 操作系统 | ext3 | ext4 | uninit_bg
RobinDong 发于 2013年07月25日 13:42 | 点击: 2615 | 展开摘要
步骤是这样:

1. mkfs.ext4格盘

2. 用fio工具随机写裸盘

3. mount盘为ext4文件系统并开始使用

发现一切使用正常,很多块盘都是这样做的,无一出错,使用了很久dmesg里连WARN都没有。但是一旦换成mkfs.ext3,使用一段时间就有报错了。

这个步骤的顺序肯定是错的,应该先写裸盘再mkfs,但是同事的问题是:为什么ext4不怕而ext3就不行了?

用dumpe2fs查看ext4的feature,嫌疑最大的是uninit_bg,因为带上这

查看全文: http://www.udpwork.com/item/10287.html

+0  rhel6再次发现jbd2的bug

Tag: 操作系统 | ext4 | jbd2
RobinDong 发于 2013年07月17日 17:38 | 点击: 7394 | 展开摘要
从上次修复jbd2的bug后到现在,已经四个月了,突然昨天DB的机器又出现了panic,用netoops抓到的信息如下:

居然又栽在jbd2上了,panic的位置和上次一样是

J_ASSERT(journal->j_running_transaction != NULL);

考虑到是运行很长时间的DB机器才出现这个问题,疑点还是落到tid上,由文卿同学找到了现象最符合的upstream的补丁:

commit deeeaf13b291420fe4a4a52606b9fc

查看全文: http://www.udpwork.com/item/10217.html

+0  ext4突然拔盘

Tag: 操作系统 | ext4 | 拔盘
RobinDong 发于 2013年07月05日 17:53 | 点击: 2358 | 展开摘要
测试ali-kernel中发现,如果进程正在对一个ext4文件系统做普通的写入:

dd if=/dev/zero of=/test/ok bs=1M count=1048576

突然拔掉盘,由于io-error-guard的作用,能迅速把ext4变为read-only,dd进程直接返回Input/Output error然后退出,但是如果接着umount,那么umount命令就一直hang住了。

跟了一下发现是文件系统发现io错误开始清除inode,ext4_destr

查看全文: http://www.udpwork.com/item/10147.html

+0  Ext4 Workshop 总结

Tag: 操作系统 | bigalloc | ext4 | filesystem | jbd2 | linux kernel
刘, 铮 发于 2013年04月25日 17:05 | 点击: 2449 | 展开摘要
2013年04月17日,Ext4 社区的开发者举行了一个讨论会。主要讨论目前 Ext4 文件系统中出现的问题及解决方法,以及后续的开发计划。本文章汇总了本次会议的内容。

在这次会议中,主要讨论了如下内容(每个话题中讨论的内容包括但不限于话题本身):

write stall 问题

3.10 merge window 的相关情况

关于 Ext4 stable/long-term tree 的维护

extent tree layout 修改

bigalloc 特性的改进

查看全文: http://www.udpwork.com/item/10045.html

+0  ext4会对机械硬盘做trim吗

Tag: 操作系统 | ext4 | SSD
RobinDong 发于 2013年04月01日 15:56 | 点击: 2387 | 展开摘要
今天@子团来问ext4对trim支持相关的问题:trim的语义是将设备某一部分的内容全置为0,如果ext4下层是机械硬盘,ext4也会给它发trim,频繁的将硬盘上的数据置0吗?

我翻了一会儿rhel 2.6.32-279 kernel的代码,找到了jbd2完成时调用trim的地方:

static void release_blocks_on_commit(journal_t *journal, transaction_t *txn)
{

查看全文: http://www.udpwork.com/item/10049.html

+0  ext4 bigalloc 答疑

Tag: 操作系统 | bigalloc | ext4
DongHao 发于 2013年02月21日 13:15 | 点击: 3059 | 展开摘要
问题都来自 pamirs 的信,感谢他对bigalloc特性的关注。

问:文件分配的时候,ext4文件系统请求的时候是按照blocks来请求,但是ext4文件系统自己会按照cluster来分配(这个的理解是否正确呢?)

答:应该说,不太准确,事实上, ext4文件系统请求分配磁盘空间的时候也是按照cluster来请求的了,ext4_ext_map_blocks() 函数是用来检查文件的逻辑位置对应的物理块的,里面申请新磁盘空间的调用是:

    &n

查看全文: http://www.udpwork.com/item/9276.html

+0  修复ext4 aio bug一个

Tag: 操作系统 | aio | ext4 | igrab | stress
DongHao 发于 2013年01月18日 17:27 | 点击: 2821 | 展开摘要
皓庭同学在给一台测试机做压力的时候出现了kernel panic:

<4>[  223.202997] RIP: 0010:[<ffffffff81194e79>]  [<ffffffff81194e79>] iput+0x69/0x70
......
<4>[  223.210475]  [<ffffffffa007de6d>] ext4_free_io_end+0x2d/

查看全文: http://www.udpwork.com/item/9095.html

+0  修复ext4 bug一个

Tag: 操作系统 | ext4 | jbd2 | ksplice
DongHao 发于 2012年12月25日 17:41 | 点击: 3525 | 展开摘要
生产上报来了内核bug:mysql在做reset master时内核整个panic了。
DBA同学非常热心的帮忙找到了重新步骤:就是一个地雷一样的文件,只要open它,再fdatasync,kernel就panic。
从panic的代码位置看,就是 jbd2_journal_commit_transaction() 里的

J_ASSERT(journal->j_running_transaction != NULL);

判断失败触发panic

但是,为什么jbd2

查看全文: http://www.udpwork.com/item/8915.html
|<<<123>>>| 一共3页, 28条记录