* [PATCH] deprecate memclear_highpage_flush deprecation warnings
@ 2007-05-15 12:24 Christoph Hellwig
2007-05-15 16:00 ` Andrew Morton
0 siblings, 1 reply; 3+ messages in thread
From: Christoph Hellwig @ 2007-05-15 12:24 UTC (permalink / raw)
To: nate.diller, akpm, torvalds; +Cc: linux-kernel
Recent builds get tons of warnings about memclear_highpage_flush
beeing deprecated. Turns out it's replaced by zero_user_page
which takes an additional argument.
Now folks, deprecated is for actual functionality going away, there
is no need to mark the old name deprecated for such a trivial
paramter change and rename. This stuff should go to Linus in one
patch that doesn't create utterly useless warnings and keeps around
stale interfaces.
Here's a patch to kill memclear_highpage_flush and convert the reaming
user to make the build a littler more silent, it's more than noisy
enough due to all the useless addition of __deprecated or __must_check
to widely used functionality and gcc stupid false positives.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Index: linux-2.6/fs/nfs/read.c
===================================================================
--- linux-2.6.orig/fs/nfs/read.c 2007-05-15 14:19:59.000000000 +0200
+++ linux-2.6/fs/nfs/read.c 2007-05-15 14:21:24.000000000 +0200
@@ -79,7 +79,7 @@ void nfs_readdata_release(void *data)
static
int nfs_return_empty_page(struct page *page)
{
- memclear_highpage_flush(page, 0, PAGE_CACHE_SIZE);
+ zero_user_page(page, 0, PAGE_CACHE_SIZE, KM_USER0);
SetPageUptodate(page);
unlock_page(page);
return 0;
@@ -103,10 +103,10 @@ static void nfs_readpage_truncate_uninit
pglen = PAGE_CACHE_SIZE - base;
for (;;) {
if (remainder <= pglen) {
- memclear_highpage_flush(*pages, base, remainder);
+ zero_user_page(*pages, base, remainder, KM_USER0);
break;
}
- memclear_highpage_flush(*pages, base, pglen);
+ zero_user_page(*pages, base, pglen, KM_USER0);
pages++;
remainder -= pglen;
pglen = PAGE_CACHE_SIZE;
@@ -130,7 +130,7 @@ static int nfs_readpage_async(struct nfs
return PTR_ERR(new);
}
if (len < PAGE_CACHE_SIZE)
- memclear_highpage_flush(page, len, PAGE_CACHE_SIZE - len);
+ zero_user_page(page, len, PAGE_CACHE_SIZE - len, KM_USER0);
nfs_list_add_request(new, &one_request);
if (NFS_SERVER(inode)->rsize < PAGE_CACHE_SIZE)
@@ -532,7 +532,7 @@ readpage_async_filler(void *data, struct
return PTR_ERR(new);
}
if (len < PAGE_CACHE_SIZE)
- memclear_highpage_flush(page, len, PAGE_CACHE_SIZE - len);
+ zero_user_page(page, len, PAGE_CACHE_SIZE - len, KM_USER0);
nfs_pageio_add_request(desc->pgio, new);
return 0;
}
Index: linux-2.6/fs/nfs/write.c
===================================================================
--- linux-2.6.orig/fs/nfs/write.c 2007-05-15 14:19:59.000000000 +0200
+++ linux-2.6/fs/nfs/write.c 2007-05-15 14:21:21.000000000 +0200
@@ -168,7 +168,7 @@ static void nfs_mark_uptodate(struct pag
if (count != nfs_page_length(page))
return;
if (count != PAGE_CACHE_SIZE)
- memclear_highpage_flush(page, count, PAGE_CACHE_SIZE - count);
+ zero_user_page(page, count, PAGE_CACHE_SIZE - count, KM_USER0);
SetPageUptodate(page);
}
Index: linux-2.6/fs/xfs/linux-2.6/xfs_lrw.c
===================================================================
--- linux-2.6.orig/fs/xfs/linux-2.6/xfs_lrw.c 2007-05-15 14:19:59.000000000 +0200
+++ linux-2.6/fs/xfs/linux-2.6/xfs_lrw.c 2007-05-15 14:21:27.000000000 +0200
@@ -159,7 +159,7 @@ xfs_iozero(
if (status)
goto unlock;
- memclear_highpage_flush(page, offset, bytes);
+ zero_user_page(page, offset, bytes, KM_USER0);
status = mapping->a_ops->commit_write(NULL, page, offset,
offset + bytes);
Index: linux-2.6/include/linux/highmem.h
===================================================================
--- linux-2.6.orig/include/linux/highmem.h 2007-05-15 14:19:59.000000000 +0200
+++ linux-2.6/include/linux/highmem.h 2007-05-15 14:21:12.000000000 +0200
@@ -110,12 +110,6 @@ static inline void clear_highpage(struct
kunmap_atomic(kaddr, (km_type)); \
} while (0)
-static inline void __deprecated memclear_highpage_flush(struct page *page,
- unsigned int offset, unsigned int size)
-{
- zero_user_page(page, offset, size, KM_USER0);
-}
-
#ifndef __HAVE_ARCH_COPY_USER_HIGHPAGE
static inline void copy_user_highpage(struct page *to, struct page *from,
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] deprecate memclear_highpage_flush deprecation warnings
2007-05-15 12:24 [PATCH] deprecate memclear_highpage_flush deprecation warnings Christoph Hellwig
@ 2007-05-15 16:00 ` Andrew Morton
2007-05-15 16:15 ` Christoph Hellwig
0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2007-05-15 16:00 UTC (permalink / raw)
To: Christoph Hellwig
Cc: nate.diller, torvalds, linux-kernel, Trond Myklebust,
Timothy Shimmin, Michael Halcrow
On Tue, 15 May 2007 14:24:40 +0200 Christoph Hellwig <hch@lst.de> wrote:
> Recent builds get tons of warnings about memclear_highpage_flush
> beeing deprecated. Turns out it's replaced by zero_user_page
> which takes an additional argument.
>
> Now folks, deprecated is for actual functionality going away, there
> is no need to mark the old name deprecated for such a trivial
> paramter change and rename.
Yes, it's rather trivial, but memclear_highpage_flush() *is* going away.
> This stuff should go to Linus in one
> patch that doesn't create utterly useless warnings and keeps around
> stale interfaces.
>
> Here's a patch to kill memclear_highpage_flush and convert the reaming
> user to make the build a littler more silent, it's more than noisy
> enough due to all the useless addition of __deprecated or __must_check
> to widely used functionality and gcc stupid false positives.
Patches have been prepared which convert all in-kernel users. I thought
I'd dtrt and feed them through maintainers, but that takes time. The
laggards are on cc ;)
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] deprecate memclear_highpage_flush deprecation warnings
2007-05-15 16:00 ` Andrew Morton
@ 2007-05-15 16:15 ` Christoph Hellwig
0 siblings, 0 replies; 3+ messages in thread
From: Christoph Hellwig @ 2007-05-15 16:15 UTC (permalink / raw)
To: Andrew Morton
Cc: Christoph Hellwig, nate.diller, torvalds, linux-kernel,
Trond Myklebust, Timothy Shimmin, Michael Halcrow
On Tue, May 15, 2007 at 09:00:32AM -0700, Andrew Morton wrote:
> On Tue, 15 May 2007 14:24:40 +0200 Christoph Hellwig <hch@lst.de> wrote:
>
> > Recent builds get tons of warnings about memclear_highpage_flush
> > beeing deprecated. Turns out it's replaced by zero_user_page
> > which takes an additional argument.
> >
> > Now folks, deprecated is for actual functionality going away, there
> > is no need to mark the old name deprecated for such a trivial
> > paramter change and rename.
>
> Yes, it's rather trivial, but memclear_highpage_flush() *is* going away.
Well, it's renamed to zero_user_page and gained an argument. We do
changed like that all the time and don't put silly deprecation warnings
in.
> > Here's a patch to kill memclear_highpage_flush and convert the reaming
> > user to make the build a littler more silent, it's more than noisy
> > enough due to all the useless addition of __deprecated or __must_check
> > to widely used functionality and gcc stupid false positives.
>
> Patches have been prepared which convert all in-kernel users. I thought
> I'd dtrt and feed them through maintainers, but that takes time. The
> laggards are on cc ;)
No, there is absolutely no point in feeding this through maintainers.
For something as trivial as a rename and adding an argument doing one
patch is enough and the right thing. We can't feed any trivial global
search & replace through maintainer and generate warnings in the
meantime.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-05-15 16:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-15 12:24 [PATCH] deprecate memclear_highpage_flush deprecation warnings Christoph Hellwig
2007-05-15 16:00 ` Andrew Morton
2007-05-15 16:15 ` Christoph Hellwig
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox