From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: Re: oops? read/write vs type of length parameter Date: Tue, 12 Apr 2011 08:43:58 -0700 Organization: UCLA Computer Science Department Message-ID: <4DA4733E.8050408@cs.ucla.edu> References: <87wrj1jhfc.fsf@rho.meyering.net> <87hba5yq0p.fsf@uwakimon.sk.tsukuba.ac.jp> <834o64sxd7.fsf@gnu.org> <4DA3A7F8.1020503@cs.ucla.edu> <83k4f0qijz.fsf@gnu.org> <4DA3DDCD.10700@cs.ucla.edu> <51964.130.55.132.62.1302611550.squirrel@webmail.lanl.gov> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1302623076 10276 80.91.229.12 (12 Apr 2011 15:44:36 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 12 Apr 2011 15:44:36 +0000 (UTC) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Apr 12 17:44:30 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Q9flV-0002IG-U2 for ged-emacs-devel@m.gmane.org; Tue, 12 Apr 2011 17:44:30 +0200 Original-Received: from localhost ([::1]:39955 helo=lists2.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9flV-0004qI-4h for ged-emacs-devel@m.gmane.org; Tue, 12 Apr 2011 11:44:29 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:33003) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9flS-0004pl-6h for emacs-devel@gnu.org; Tue, 12 Apr 2011 11:44:27 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q9flR-0006P6-AM for emacs-devel@gnu.org; Tue, 12 Apr 2011 11:44:26 -0400 Original-Received: from smtp.cs.ucla.edu ([131.179.128.62]:46825) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9flP-0006OE-TB; Tue, 12 Apr 2011 11:44:24 -0400 Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 3BA9D39E8082; Tue, 12 Apr 2011 08:44:22 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Original-Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mfMi27MAnYqv; Tue, 12 Apr 2011 08:44:21 -0700 (PDT) Original-Received: from [192.168.1.10] (pool-71-189-109-235.lsanca.fios.verizon.net [71.189.109.235]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 5C09339E80DB; Tue, 12 Apr 2011 08:44:21 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110223 Thunderbird/3.1.8 In-Reply-To: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 131.179.128.62 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:138440 Archived-At: >> Can't that be used (with perhaps more like 64 MiB than 64 KiB per >> call) for these large files too? > That would just slow down Emacs's I/O for no good reason. There may be some good reason, actually. In some cases there are serious bugs with Linux kernels before 2.6.16, when an application writes huge buffers. That what was MAX_RW_COUNT was introduced for, inside the kernel. Now, Linux 'write' calls never return more than that value. This just papers over some lower-level bugs, but there it is. With this in mind, perhaps Emacs should refuse to write more than MAX_RW_COUNT (i.e., INT_MAX - 4095) bytes at a time, regardless of whether the kernel itself imposes the limit, as larger writes are likely to tickle bugs in older Linux kernels. See, for example: https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=612839