[comp.unix.programmer] record locking with fcntl on NFS

tmm33@leah.Albany.Edu (Terry McCoy) (10/03/90)

I have written a function that uses fcntl to lock a segment of a file.  The
function works when the file is located on the local filesystem.  But when
I attemp to use this function to perform locking on a file that is located
on a NFS mounted filesystem the program will crash with a panic within the
kernel "Memory address alignment".  I did use the F_RSETLK command when trying
to lock the file on the NFS filesystem as opposed to F_SETLK on the file that
was on a local filesystem.  Any ideas why the lock on the NFS filesystem will
cause the panic and the lock on the local filesystem does not.


Terry McCoy
National Lightning Detection Network
Research Foundation  -  State University of New York at Albany
------------------------------------------------------------------------------
internet:    tmm33@leah.albany.edu
Phone:       (518) 442-4588
Snail Mail:  Terry McCoy ES-235
             SUNY Albany
             1400 Washington Ave.
             Albany, NY 12222

decot@hpisod2.HP.COM (Dave Decot) (10/05/90)

> on a NFS mounted filesystem the program will crash with a panic within the
> kernel "Memory address alignment".  I did use the F_RSETLK command

It is because you are using NFS, which is a buggy product.  It was originally
designed in a way that would prevent file locking from being implemented
in any correct fashion.

Anyway, you should complain to the people who sold the system to
your school.  They should be able to tell you why their kernel is
broken.

Dave Decot
(These are not HP's opinions; no warranty is expressed or implied.)