Most recent kernel where this bug did *NOT* occur:2.6.17 Distribution: Fedora core 3 Hardware Environment: Software Environment: Problem Description: I have the same problem as reported on http://www.luga.at/mailing-lists/luga/2007/02/msg00032.html (in German). When I connect to my ISP via an analogue serial modem my Linux Box sends a PPP Compression Control Protocol Termination Request with "Lost compression sync" to the provider and then the provider dropps the link. This does not happen with kernel 2.6.17, but happens from kernel version 2.6.18 to 2.6.21 (not tested: 2.6.19). If I put the nodeflate command line to the pppd then the link remains stable. Steps to reproduce: In order to find out what is happening I have set up a ppp connection via a serial nullmodem to another old Linux box (kernel 2.2.14) and have activated the kernel debug in the ppp_deflate.ko module. The "Lost compression sync:" is reproducable in this configuration - the only difference is that the link remains (without deflate compression). Here is the log vor /var/log/messages: Apr 29 16:53:34 linux kernel: PPP Deflate Compression module registered Apr 29 16:53:47 linux pppd[9090]: pppd 2.4.4 started by root, uid 0 Apr 29 16:53:47 linux pppd[9090]: Using interface ppp0 Apr 29 16:53:47 linux pppd[9090]: Connect: ppp0 <--> /dev/pts/9 Apr 29 16:53:47 linux pppd[9090]: kernel does not support PPP filtering Apr 29 16:53:47 linux pppd[9090]: Deflate (15) compression enabled Apr 29 16:53:47 linux pppd[9090]: Cannot determine ethernet address for proxy ARP Apr 29 16:53:47 linux pppd[9090]: local IP address 192.168.3.2 Apr 29 16:53:47 linux pppd[9090]: remote IP address 192.168.3.1 Apr 29 16:54:03 linux kernel: z_decompress0: inflate returned -5 () Apr 29 16:54:03 linux pppd[9090]: PPPIOCGFLAGS flags: c030c0 Apr 29 16:54:03 linux pppd[9090]: Lost compression sync: disabling compression I had a look at the kernel patch of 2.6.18 - the lib/zlib/zlib_inflate was changed a lot and for me it looks to be the reason of the problem.
Created attachment 11576 [details] Here is the fix The last zlib_inflate update broke certain corner cases for ppp_deflate decompression handling. This patch fixes some logic to make things work properly again. Users other than ppp_deflate (the only Z_PACKET_FLUSH user) should be unaffected. Fixes bug 8405 (confirmed by the reporter). Signed-off-by: Richard Purdie <rpurdie@rpsys.net>