From: William Lee Irwin III <wli@holomorphy.com>
To: Andrea Arcangeli <andrea@suse.de>, Andrew Morton <akpm@osdl.org>,
nickpiggin@yahoo.com.au, tiwai@suse.de, ak@suse.de, ak@muc.de,
tripperda@nvidia.com, discuss@x86-64.org,
linux-kernel@vger.kernel.org
Subject: Re: [discuss] Re: 32-bit dma allocations on 64-bit platforms
Date: Thu, 24 Jun 2004 15:40:02 -0700 [thread overview]
Message-ID: <20040624224002.GQ21066@holomorphy.com> (raw)
In-Reply-To: <20040624223750.GP21066@holomorphy.com>
/*
On Thu, Jun 24, 2004 at 03:37:50PM -0700, William Lee Irwin III wrote:
> Have you tried with 2.6.7? The following program fails to trigger anything
> like what you've mentioned, though granted it was a 512MB allocation on
> a 1GB machine. swapoff(2) merely fails.
And after fixing a bug in the program, not even that fails:
*/
#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <strings.h>
#include <sys/swap.h>
int main(int argc, char * const argv[])
{
int i;
long pagesize, physpages;
size_t size;
void *p;
pagesize = sysconf(_SC_PAGE_SIZE);
if (pagesize < 0) {
perror("failed to determine pagesize");
exit(EXIT_FAILURE);
}
physpages = sysconf(_SC_PHYS_PAGES);
if (physpages < 0) {
perror("failed to determine physical memory capacity");
exit(EXIT_FAILURE);
}
if ((size_t)(physpages/2) > SIZE_MAX/pagesize) {
fprintf(stderr, "insufficient virtualspace capacity\n");
exit(EXIT_FAILURE);
}
size = (physpages/2)*pagesize;
p = malloc(size);
if (!p) {
perror("allocation failure");
exit(EXIT_FAILURE);
}
bzero(p, size);
for (i = 1; i < argc; ++i) {
if (swapoff(argv[i])) {
perror("swapoff failure");
fprintf(stderr, "failed to offline %s\n", argv[i]);
exit(EXIT_FAILURE);
}
}
return EXIT_SUCCESS;
}
next prev parent reply other threads:[~2004-06-24 22:44 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <m3acyu6pwd.fsf@averell.firstfloor.org>
[not found] ` <20040623213643.GB32456@hygelac>
2004-06-23 23:46 ` 32-bit dma allocations on 64-bit platforms Andi Kleen
2004-06-24 11:13 ` Takashi Iwai
2004-06-24 11:29 ` [discuss] " Andi Kleen
2004-06-24 14:36 ` Takashi Iwai
2004-06-24 14:42 ` Andi Kleen
2004-06-24 14:58 ` Takashi Iwai
2004-06-24 15:29 ` Andrea Arcangeli
2004-06-24 15:48 ` Nick Piggin
2004-06-24 16:52 ` Andrea Arcangeli
2004-06-24 16:56 ` William Lee Irwin III
2004-06-24 17:32 ` Andrea Arcangeli
2004-06-24 17:38 ` William Lee Irwin III
2004-06-24 18:02 ` Andrea Arcangeli
2004-06-24 18:13 ` William Lee Irwin III
2004-06-24 18:27 ` Andrea Arcangeli
2004-06-24 18:50 ` William Lee Irwin III
2004-06-24 21:54 ` Andrew Morton
2004-06-24 22:08 ` William Lee Irwin III
2004-06-24 22:45 ` Andrea Arcangeli
2004-06-24 22:51 ` William Lee Irwin III
2004-06-24 23:09 ` Andrew Morton
2004-06-24 23:15 ` William Lee Irwin III
2004-06-25 6:16 ` William Lee Irwin III
2004-06-25 2:39 ` Andrea Arcangeli
2004-06-25 2:47 ` Andrew Morton
2004-06-25 3:19 ` Andrea Arcangeli
2004-06-24 22:11 ` Andrew Morton
2004-06-24 23:09 ` Andrea Arcangeli
2004-06-25 1:17 ` Nick Piggin
2004-06-25 3:11 ` Andrea Arcangeli
2004-06-24 22:21 ` Andrea Arcangeli
2004-06-24 22:36 ` Andrew Morton
2004-06-24 23:15 ` Andrea Arcangeli
2004-06-24 22:37 ` William Lee Irwin III
2004-06-24 22:40 ` William Lee Irwin III [this message]
2004-06-24 23:21 ` Andrea Arcangeli
2004-06-24 23:45 ` William Lee Irwin III
2004-06-24 17:39 ` Andrea Arcangeli
2004-06-24 17:53 ` William Lee Irwin III
2004-06-24 18:07 ` Andrea Arcangeli
2004-06-24 18:29 ` William Lee Irwin III
2004-06-24 16:04 ` Takashi Iwai
2004-06-24 17:16 ` Andrea Arcangeli
2004-06-24 18:33 ` Takashi Iwai
2004-06-24 18:44 ` Andrea Arcangeli
2004-06-25 15:50 ` Takashi Iwai
2004-06-25 17:30 ` Andrea Arcangeli
2004-06-25 17:39 ` Takashi Iwai
2004-06-25 17:45 ` Andrea Arcangeli
2004-06-24 14:45 ` Terence Ripperda
2004-06-24 15:41 ` Andrea Arcangeli
2004-06-24 15:44 ` Terence Ripperda
2004-06-24 16:15 ` [discuss] " Andi Kleen
2004-06-24 17:22 ` Andrea Arcangeli
2004-06-24 22:28 ` Terence Ripperda
2004-06-24 18:51 ` Andi Kleen
2004-06-26 4:58 ` David Mosberger
2004-06-24 13:48 Jesse Barnes
2004-06-24 14:39 ` Terence Ripperda
2004-06-24 15:01 ` [discuss] " Andi Kleen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040624224002.GQ21066@holomorphy.com \
--to=wli@holomorphy.com \
--cc=ak@muc.de \
--cc=ak@suse.de \
--cc=akpm@osdl.org \
--cc=andrea@suse.de \
--cc=discuss@x86-64.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nickpiggin@yahoo.com.au \
--cc=tiwai@suse.de \
--cc=tripperda@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox