2010-02-24 04:50:48     pppd failed with Fatal signal 11

Document created by Aaronwu Employee on Aug 22, 2013
Version 1Show Document
  • View in full screen mode

2010-02-24 04:50:48     pppd failed with Fatal signal 11

david wang (CHINA)

Message: 86446   

 

Hi, all

 

   I download the newest 2009R1.1-RC4 kernel and toolchain. But I got a pppd failed when I 'm trying to dial with usb modem,

 

root:/etc/ppp/peers> pppd call ct

Warning: couldn't open ppp database /var/run/pppd2.tdb

Fatal signal 11

Connect script failed

root:/etc/ppp/peers>

 

More, I test pppoe, also failed.

 

root:/etc/ppp/peers> pppd pty 'pppoe' user test password test

Warning: couldn't open ppp database /var/run/pppd2.tdb

SIGSEGV

root:/etc/ppp/peers>

 

  In 2008R1.5, it works fine.

QuoteReplyEditDelete

 

 

2010-02-24 08:24:13     Re: pppd failed with Fatal signal 11

Mike Frysinger (UNITED STATES)

Message: 86455   

 

did you try fixing the warning first ?

QuoteReplyEditDelete

 

 

2010-02-24 08:35:33     Re: pppd failed with Fatal signal 11

david wang (CHINA)

Message: 86460   

 

Hi, Mike

 

  I debug the pppd with gdbserver, and found the warning is due to tdb_brlock failed, in source,

 

//------------tdb.c-------------------

 

static int tdb_brlock(TDB_CONTEXT *tdb, tdb_off offset,

     int rw_type, int lck_type, int probe)

{

       ......

do {

ret = fcntl(tdb->fd,lck_type,&fl);

if (ret == -1 && errno == EINTR && palarm_fired && *palarm_fired)

break;

} while (ret == -1 && errno == EINTR);

 

 

   The fcntl return with a errno 13,  why?   After that, the tdb object is was released, and then cause a signal in update_db_entry.

 

QuoteReplyEditDelete

 

 

2010-02-24 09:08:27     Re: pppd failed with Fatal signal 11

david wang (CHINA)

Message: 86461   

 

This is the log,

 

tdb_brlock failed (fd=6) at offset 0 rw_type=1 lck_type=7: Permission denied

QuoteReplyEditDelete

 

 

2010-02-24 10:12:23     Re: pppd failed with Fatal signal 11

Mike Frysinger (UNITED STATES)

Message: 86462   

 

so create things with proper permissions

QuoteReplyEditDelete

 

 

2010-02-24 10:35:07     Re: pppd failed with Fatal signal 11

david wang (CHINA)

Message: 86467   

 

But this file is not created by me, but by pppd itself!

QuoteReplyEditDelete

 

 

2010-02-25 06:30:48     Re: pppd failed with Fatal signal 11

david wang (CHINA)

Message: 86534   

 

Hi, Mike

 

  Do you have any idea?

QuoteReplyEditDelete

 

 

2010-02-25 06:49:17     Re: pppd failed with Fatal signal 11

Mike Frysinger (UNITED STATES)

Message: 86536   

 

i already said -- find and fix the file creation step

QuoteReplyEditDelete

 

 

2010-03-01 06:08:17     Re: pppd failed with Fatal signal 11

david wang (CHINA)

Message: 86665   

 

I read the source code of pppd, but do you think the open flags O_RDWR|O_CREAT and  mode 0644 is not correct?

 

in main.c,

 

    pppdb = tdb_open(_PATH_PPPDB, 0, 0, O_RDWR|O_CREAT, 0644);

 

and in tdb.c

 

if ((tdb->fd = open(name, open_flags, mode)) == -1) {

 

 

QuoteReplyEditDelete

 

 

2010-04-22 04:58:36     Re: pppd failed with Fatal signal 11

Carmen Carrascal (SPAIN)

Message: 88761   

 

Hi David,

 

Have you solved the problem? Now I have the same as you and I don't know how solve it?

 

Could you give me any idea?

 

Thank you in advance for your help,

 

Carmen

QuoteReplyEditDelete

 

 

2010-07-22 07:38:05     Re: pppd failed with Fatal signal 11

Tobias Klauser (SWITZERLAND)

Message: 91581   

 

Hi David,

 

I just had the same problem and found out that I didn't enable CONFIG_FILE_LOCKING in my kernel. After enabling it the file locking worked perfectly. Maybe you also have CONFIG_FILE_LOCKING disabled?

 

Cheers

 

Tobias

Attachments

    Outcomes