Messages in this thread |  | | | Date | Sun, 14 May 2006 16:01:13 +0400 | | From | Evgeniy Dushistov <> | | Subject | Re: [RFC] [PATCH 3/3] ufs: change b_blocknr |
| |
On Sun, May 14, 2006 at 03:58:01AM -0700, Andrew Morton wrote: > Evgeniy Dushistov <dushistov@mail.ru> wrote: > > > > Because of ufs's layout, code which works with UFS should > > time to time change such map "online": > > physical location<-->logical inode block > > It does? You mean that certain parts of a file will get moved from one set > of disk blocks to another? > In short file: consist of several blocks and fragments. sizeof(block)=8*sizeof(fragment), fragments used to prevent unwanted waste of space.
When file is growing and we occupy 8 fragments in tail of it, we should allocate whole block and move all 8 fragments to it.
In 2.2 I suppose such code works fine: bh = sb_bread bh->b_blocknr=newvalue mark_buffer_dirty
I doubt that it is normal for 2.4, and this was completely wrong for 2.6.
-- /Evgeniy
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |