Richard,
Calvin> output of strace
strace ./testptp -d /dev/ptp0 -g
execve("./testptp", ["./testptp", "-d", "/dev/ptp0", "-g"], [/* 20 vars */]) = 0
brk(0)                                  = 0x1aa3000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x7f0f8e45d000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=41323, ...}) = 0
mmap(NULL, 41323, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f0f8e452000
close(3)                                = 0
open("/lib64/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\"@\2265\0\0\0"..., 
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=48128, ...}) = 0
mmap(0x3596400000, 2128984, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 
0) = 0x3596400000
mprotect(0x3596407000, 2093056, PROT_NONE) = 0
mmap(0x3596606000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x3596606000
close(3)                                = 0
open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, 
"\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\27\202\2255\0\0\0"..., 832) 
= 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2076800, ...}) = 0
mmap(0x3595800000, 3896632, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 
0) = 0x3595800000
mprotect(0x35959ad000, 2097152, PROT_NONE) = 0
mmap(0x3595bad000, 24576, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1ad000) = 0x3595bad000
mmap(0x3595bb3000, 17720, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3595bb3000
close(3)                                = 0
open("/lib64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320k\0\2265\0\0\0"..., 
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=145176, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x7f0f8e451000
mmap(0x3596000000, 2208760, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 
0) = 0x3596000000
mprotect(0x3596017000, 2093056, PROT_NONE) = 0
mmap(0x3596216000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x3596216000
mmap(0x3596218000, 13304, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3596218000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x7f0f8e450000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x7f0f8e44f000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x7f0f8e44e000
arch_prctl(ARCH_SET_FS, 0x7f0f8e44f700) = 0
mprotect(0x3595bad000, 16384, PROT_READ) = 0
mprotect(0x3596216000, 4096, PROT_READ) = 0
mprotect(0x3596606000, 4096, PROT_READ) = 0
mprotect(0x3595621000, 4096, PROT_READ) = 0
munmap(0x7f0f8e452000, 41323)           = 0
set_tid_address(0x7f0f8e44f9d0)         = 2589
set_robust_list(0x7f0f8e44f9e0, 24)     = 0
rt_sigaction(SIGRTMIN, {0x3596006720, [], SA_RESTORER|SA_SIGINFO, 
0x359600f500}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x35960067b0, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 
0x359600f500}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
open("/dev/ptp0", O_RDWR)               = 3
clock_gettime(0xffffffe3 /* CLOCK_??? */, {1393947888, 731912808}) = 0
open("/proc/cpuinfo", O_RDONLY)         = 4
read(4, "processor\t: 0\nvendor_id\t: Genuin"..., 4096) = 3764
close(4)                                = 0
dup(2)                                  = 4
fcntl(4, F_GETFL)                       = 0x8402 (flags 
O_RDWR|O_APPEND|O_LARGEFILE)
brk(0)                                  = 0x1aa3000
brk(0x1ac4000)                          = 0x1ac4000
brk(0)                                  = 0x1ac4000
fstat(4, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0x7f0f8e45c000
lseek(4, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
write(4, "clock_gettime %m: Invalid argume"..., 35clock_gettime %m: Invalid 
argument
) = 35
close(4)                                = 0
munmap(0x7f0f8e45c000, 4096)            = 0
close(3)                                = 0
exit_group(0)                           = ?
+++ exited with 0 +++

Calvin> Here is output of ltrace

[root@V4-CALVIN ptptest]# ltrace ./testptp -d /dev/ptp0 -g
unexpected breakpoint at 0x35954016df
(0, 0, 0, -1, 0x1f25bc2)                                                        
                = 0x3595623260
__libc_start_main(0x400ed4, 4, 0x7fff7d779898, 0x401790, 0x401820 <unfinished 
...>
strrchr("./testptp", '/')                                                       
                = "/testptp"
getopt(4, 0x7fff7d779898, "a:A:cd:e:f:ghp:P:sSt:v")                             
                = 100
getopt(4, 0x7fff7d779898, "a:A:cd:e:f:ghp:P:sSt:v")                             
                = 103
getopt(4, 0x7fff7d779898, "a:A:cd:e:f:ghp:P:sSt:v")                             
                = -1
open("/dev/ptp0", 2, 022556611134)                                              
                = 4
clock_gettime(0xffffffdb, 0x7fff7d779690, 0x7fff7d779690, -1, 0)                
                = 0xffffffff
perror("clock_gettime %m"clock_gettime %m: Invalid argument
)                                                                      = <void>
close(4)                                                                        
                = 0
+++ exited (status 0) +++


Thanks!

Calvin
-----Original Message-----
From: Richard Cochran [mailto:[email protected]] 
Sent: Tuesday, March 04, 2014 10:18 AM
To: Pham, Calvin
Cc: [email protected]
Subject: Re: [Linuxptp-users] phc2sys[273995.639]: failed to read clock: 
Invalid argument

On Tue, Mar 04, 2014 at 01:55:56PM +0000, Pham, Calvin wrote:
> 
>  > testptp -g
>       [root@V4-CALVIN ptp]# ./testptp -g
>       gettime: CLK_ID 0xffffffe3
>       clock time: 1393941119.523279956 or Tue Mar  4 08:51:59 2014
>       clock_gettime %m: Invalid argument

[ It looks like you changed testptp to always print the time. ]

I looked at the igb driver, and it always returns 0 for its gettime method. So 
now this looks more like a glibc bug.

Can you run 'testptp -g' under strace and ltrace and post the results?

Thanks,
Richard

------------------------------------------------------------------------------
Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce.
With Perforce, you get hassle-free workflows. Merge that actually works. 
Faster operations. Version large binaries.  Built-in WAN optimization and the
freedom to use Git, Perforce or both. Make the move to Perforce.
http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk
_______________________________________________
Linuxptp-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxptp-users

Reply via email to