SUMMARY: odd settatr messages

From: Patrick L. Nolan (pln@egret1.Stanford.EDU)
Date: Thu Jul 29 1993 - 15:25:08 CDT


Yesterday I asked a question about odd messages appearing recently
in /var/adm/messages. They look like this:

Jul 27 00:00:05 egret0 vmunix: setattr: truncate or extend to non-zero
not supported

I received replies from guy@auspex.com and kevin@uniq.com.au.
They pointed out that this is a complaint from one of the SunOS
filesystems which is being asked to do an operation that it cannot
do. The message from Guy Harris is so clear that I will just append
most of it to this summary.

The villain in the case is IFS, a third-party filesystem (from
R-Squared) which handles a read-write optical disk jukebox.
Apparently there are certain Fortran I/O operations which try to
do operations that IFS can't handle. We are currently trying to
track down which program caused the errors and whether they produced
erroneous results.

------- appended reply from Guy Harris -------------------------
> Have you added any add-on Sun products or third-party products to
your
> OS?
>
> The message is *probably* coming from one of the file systems in your
> OS; "file systems" here refers to modules in the OS kernel that
provide
> a file-system like interface. The modules that come standard with
SunOS
> 4.x and 5.x include:
>
> UFS - provides a file system interface to the BSD file system;
> all "4.2" or "ufs" file systems are mounted using the UFS
> module.
>
> NFS - provides a file system interface to file systems on
remote
> NFS servers; all "nfs" file systems are mounted using the
NFS
> module.
>
> Different SunOS versions may include other modules.
>
> "setattr" is one of the operations provided by modules that provide
that
> interface; it sets the attributes of a file.
>
> One such attribute is the size of a file; code within the kernel can
> call a particular file system module's "setattr" routine, giving it a
> "handle" that refers to a file on one of the file systems handled by
> that module, telling it to shorten or lengthen the file. User-mode
code
> can do so by making a "truncate()" or "ftruncate()" call on the
file.
>
> Most file systems support the ability to set the file's size to some
> arbitrary value (less than 2 gigabytes, at least). It appears from
the
> message that some file system module in your OS does *not* support
that,
> but only supports the ability to set the file's size to zero (i.e.,
toss
> out all the data in the file and leave it as an empty file).
>
> I can't find any code in the SunOS 4.1, 4.1.1, 4.1.2, or 4.1.3 kernel
> source that prints that message (I looked for the string "non-zero";
it
> didn't show up in any character string that could be part of that
> message, so if there's some code that can issue that message, it's
> *really* well hidden). I only checked the kernel code because the
> message had "vmunix:" in it, which indicates that it probably came
from
> the kernel.
>
> Thus, I suspect you have some Sun add-on file system module or some
> third-party file system module in your OS, or are running a SunOS
> version older than 4.1 (but later than 3.5, because 3.5 only let
> "setattr" shorten a file, not lengthen it) or a SunOS 5.x version.

* Patrick L. Nolan (415)723-0133 *
* W. W. Hansen Experimental Physics Laboratory (HEPL) *
* Stanford University *
* Bitnet: PLN@SLACVM Internet: pln@egret0.stanford.edu *



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:08:04 CDT