Messages in this thread | | | Date | Tue, 13 Aug 2002 14:10:10 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] simplify b_inode usage |
| |
Christoph Hellwig wrote: > > Current the b_inode of struct buffer_head is a pointer to an inode, but > it only always used as bool value. This patch changes it to an simple > int (yes, I know some people have ideas for a flag that uses less space, > but that can be easily done ontop of this cleanup). The advantage is > that we don't have to pass in the inode into buffer_insert_inode_queue/ > buffer_insert_inode_data_queue and can merge them into a more general > buffer_insert_list, with inline wrappers around it. reiserfs can now > use buffer_insert_list directly and embedd a simple list_head instead > of a full static inode into it's journal. > > A similar cleanup has already been done in early 2.5, but the b_inode > flag is completly gone there now. >
Current ext3 CVS (ie: 2.4.20 candidate code) is using b_inode as an inode *. Stephen has acked a proposal to stop doing that, but let's double check with him first.
Also, Joe Thornber needs to add another pointer to struct buffer_head for LVM2 reasons. If we collapse b_inode into a b_flags bit then Joe gets his pointer for free (bh stays at 48 bytes on ia32).
So I'd suggest you just go ahead and do it that way. (I had a patch for that but seem to have misplaced it). - 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/
| |