Re: writev does not work properly on GFS filesystem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Nenad Opsenica wrote:
I have found a problem when trying to use syslog (sysklogd-1.4.1) for writing log files to GFS-mounted filesystem, as only timestamp gets logged. After searching and tracing with strace, it seems that problem is somewhere in GFS filesystem writev implementation.


Here is strace of what happens when logging to file on ext3 FS (using logger -p user.notice "test-ext3 filesystem" to force logging):

   recv(3, "<13>Mar 27 18:27:57 root: test-e"..., 1022, 0) = 46
   time(NULL)                              = 1175012877
writev(4, [{"Mar 27 18:27:57", 15}, {" ", 1}, {"pantelija", 9}, {" ", 1}, {"root: test-ext3 filesystem", 26}, {"\n", 1}], 6) = 53
   fsync(4)                                = 0


And now, when trying to log to file on GFS FS (using logger -p user.notice "test-gfs filesystem") - we have got 45 bytes to write, syslog is properly formatting text string into 6 array entries, but only the first is written - as could be seen from writev return code:

   recv(3, "<13>Mar 27 18:28:49 root: test-g"..., 1022, 0) = 45
   time(NULL)                              = 1175012929
writev(4, [{"Mar 27 18:28:49", 15}, {" ", 1}, {"pantelija", 9}, {" ", 1}, {"root: test-gfs filesystem", 25}, {"\n", 1}], 6) = 15
   fsync(4)                                = 0


Kernel is 2.6.20.2 and GFS-kernel is 1.04.00

Yeah... an oversight. I'll fix this soon.

-- Wendy

--
Linux-cluster mailing list
Linux-cluster@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/linux-cluster

[Index of Archives]     [Corosync Cluster Engine]     [GFS]     [Linux Virtualization]     [Centos Virtualization]     [Centos]     [Linux RAID]     [Fedora Users]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite Camping]

  Powered by Linux