Shared memory communication between gpsd and ntpd

Posted on

Problem :

I’m running linux Fedora 24 and I want to use gpsd to give the received signals to ntpd via the shared memory. I think that my configuration of ntpd is OK, but ntpq display a zero value for “reach” for SHM(0) and SHM(1). I suspect that anything is wrong in the shared memory communication. cgps shows that the signals are arriving. I have found no log entry related to this issue.

Here you can see the relevant parts of ipcs and lsof output, related to the mentioned defective communication.

What do I have to do in order the solve this problem ? Thanks a lot !

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status      
0x4e545030 0          root       600        80         2                       
0x4e545031 32769      root       600        80         2                       
0x4e545032 65538      root       666        80         1                       
0x4e545033 98307      root       666        80         1                       
0x4e545034 131076     root       666        80         1                       
0x4e545035 163845     root       666        80         1                       
0x4e545036 196614     root       666        80         1                       
0x4e545037 229383     root       666        80         1                       
0x47505344 262152     root       666        8068       1                       

COMMAND PID   USER   FD   TYPE     DEVICE SIZE/OFF    NODE NAME

gpsd    849 nobody  DEL    REG        0,5           262152 /SYSV47505344
gpsd    849 nobody  DEL    REG        0,5           229383 /SYSV4e545037
gpsd    849 nobody  DEL    REG        0,5           196614 /SYSV4e545036
gpsd    849 nobody  DEL    REG        0,5           163845 /SYSV4e545035
gpsd    849 nobody  DEL    REG        0,5           131076 /SYSV4e545034
gpsd    849 nobody  DEL    REG        0,5            98307 /SYSV4e545033
gpsd    849 nobody  DEL    REG        0,5            65538 /SYSV4e545032
gpsd    849 nobody  DEL    REG        0,5            32769 /SYSV4e545031
gpsd    849 nobody  DEL    REG        0,5                0 /SYSV4e545030

COMMAND PID   USER   FD   TYPE     DEVICE SIZE/OFF    NODE NAME

ntpd    898  ntp  DEL       REG        0,5            32769 /SYSV4e545031
ntpd    898  ntp  DEL       REG        0,5                0 /SYSV4e545030

Solution :

There is a hidden behavior of the “-n” option of “gpsd”. If this option is not set, the communication via shared memory is absent.

Leave a Reply

Your email address will not be published. Required fields are marked *