public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [patch 16/19] clean up alloc_buffer_head()
@ 2002-06-17  6:53 Andrew Morton
  0 siblings, 0 replies; only message in thread
From: Andrew Morton @ 2002-06-17  6:53 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: lkml



alloc_bufer_head() does not need the additional argument - GFP_NOFS is
always correct.



--- 2.5.22/fs/buffer.c~cleanup-alloc_buffer_head	Sun Jun 16 23:12:52 2002
+++ 2.5.22-akpm/fs/buffer.c	Sun Jun 16 23:22:44 2002
@@ -947,12 +947,12 @@ void invalidate_inode_buffers(struct ino
  * the size of each buffer.. Use the bh->b_this_page linked list to
  * follow the buffers created.  Return NULL if unable to create more
  * buffers.
- * The async flag is used to differentiate async IO (paging, swapping)
- * from ordinary buffer allocations, and only async requests are allowed
- * to sleep waiting for buffer heads. 
+ *
+ * The retry flag is used to differentiate async IO (paging, swapping)
+ * which may not fail from ordinary buffer allocations.
  */
 static struct buffer_head *
-create_buffers(struct page * page, unsigned long size, int async)
+create_buffers(struct page * page, unsigned long size, int retry)
 {
 	struct buffer_head *bh, *head;
 	long offset;
@@ -961,7 +961,7 @@ try_again:
 	head = NULL;
 	offset = PAGE_SIZE;
 	while ((offset -= size) >= 0) {
-		bh = alloc_buffer_head(async);
+		bh = alloc_buffer_head();
 		if (!bh)
 			goto no_grow;
 
@@ -998,7 +998,7 @@ no_grow:
 	 * become available.  But we don't want tasks sleeping with 
 	 * partially complete buffers, so all were released above.
 	 */
-	if (!async)
+	if (!retry)
 		return NULL;
 
 	/* We're _really_ low on memory. Now we just
@@ -2396,7 +2396,7 @@ asmlinkage long sys_bdflush(int func, lo
 static kmem_cache_t *bh_cachep;
 static mempool_t *bh_mempool;
 
-struct buffer_head *alloc_buffer_head(int async)
+struct buffer_head *alloc_buffer_head(void)
 {
 	return mempool_alloc(bh_mempool, GFP_NOFS);
 }
--- 2.5.22/fs/jbd/journal.c~cleanup-alloc_buffer_head	Sun Jun 16 23:12:52 2002
+++ 2.5.22-akpm/fs/jbd/journal.c	Sun Jun 16 23:12:52 2002
@@ -463,7 +463,7 @@ int journal_write_metadata_buffer(transa
 	 * Right, time to make up the new buffer_head.
 	 */
 	do {
-		new_bh = alloc_buffer_head(0);
+		new_bh = alloc_buffer_head();
 		if (!new_bh) {
 			printk (KERN_NOTICE "%s: ENOMEM at alloc_buffer_head, "
 				"trying again.\n", __FUNCTION__);
--- 2.5.22/include/linux/buffer_head.h~cleanup-alloc_buffer_head	Sun Jun 16 23:12:52 2002
+++ 2.5.22-akpm/include/linux/buffer_head.h	Sun Jun 16 23:22:44 2002
@@ -164,7 +164,7 @@ void __brelse(struct buffer_head *);
 void __bforget(struct buffer_head *);
 struct buffer_head * __bread(struct block_device *, int, int);
 void wakeup_bdflush(void);
-struct buffer_head *alloc_buffer_head(int async);
+struct buffer_head *alloc_buffer_head(void);
 void free_buffer_head(struct buffer_head * bh);
 void FASTCALL(unlock_buffer(struct buffer_head *bh));
 

-

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-06-17  6:52 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-06-17  6:53 [patch 16/19] clean up alloc_buffer_head() Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox