From: Jay Lan <jlan@engr.sgi.com>
To: Peter Staubach <staubach@redhat.com>
Cc: linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] largefile support for accounting
Date: Thu, 11 Aug 2005 10:27:43 -0700 [thread overview]
Message-ID: <42FB8A8F.3020902@engr.sgi.com> (raw)
In-Reply-To: <42FB6255.10807@redhat.com>
Yes, our CSA customers reported same problem. CSA already incoporated
same fix to our kernel module code. :)
Cheers,
- jay
Peter Staubach wrote:
> Hi.
>
> There is a problem in the accounting subsystem in the kernel can not
> correctly handle files larger than 2GB. The output file containing
> the process accounting data can grow very large if the system is large
> enough and active enough. If the 2GB limit is reached, then the system
> simply stops storing process accounting data.
>
> Another annoying problem is that once the system reaches this 2GB limit,
> then every process which exits will receive a signal, SIGXFSZ. This
> signal is generated because an attempt was made to write beyond the limit
> for the file descriptor. This signal makes it look like every process
> has exited due to a signal, when in fact, they have not.
>
> The solution is to add the O_LARGEFILE flag to the list of flags used
> to open the accounting file. The rest of the accounting support is
> already largefile safe.
>
> The changes were tested by constructing a large file (just short of 2GB),
> enabling accounting, and then running enough commands to cause the
> accounting data generated to increase the size of the file to 2GB. Without
> the changes, the file grows to 2GB and the last command run in the test
> script appears to exit due a signal when it has not. With the changes,
> things work as expected and quietly.
>
> There are some user level changes required so that it can deal with
> largefiles, but those are being handled separately.
>
> Signed-off-by: Peter Staubach <staubach@redhat.com>
>
>
> ------------------------------------------------------------------------
>
> --- linux-2.6.12/kernel/acct.c.org 2005-06-17 15:48:29.000000000 -0400
> +++ linux-2.6.12/kernel/acct.c 2005-08-10 15:12:46.000000000 -0400
> @@ -220,7 +220,7 @@ asmlinkage long sys_acct(const char __us
> return (PTR_ERR(tmp));
> }
> /* Difference from BSD - they don't do O_APPEND */
> - file = filp_open(tmp, O_WRONLY|O_APPEND, 0);
> + file = filp_open(tmp, O_WRONLY | O_APPEND | O_LARGEFILE, 0);
> putname(tmp);
> if (IS_ERR(file)) {
> return (PTR_ERR(file));
prev parent reply other threads:[~2005-08-11 17:28 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-11 14:36 [PATCH] largefile support for accounting Peter Staubach
2005-08-11 17:27 ` Jay Lan [this message]
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=42FB8A8F.3020902@engr.sgi.com \
--to=jlan@engr.sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=staubach@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.