Re: commloops and chunked mempools

From: Vladimir B. Savkin <master@dont-contact.us>
Date: Wed, 27 Feb 2002 12:39:02 +0300

On Wed, Feb 27, 2002 at 02:23:32AM -0700, Adrian Chadd wrote:
> On Wed, Feb 27, 2002, Vladimir B. Savkin wrote:
> > On Tue, Feb 26, 2002 at 08:53:39AM -0700, Adrian Chadd wrote:
> > >
> > > hi all,
> > >
> > > as threatened, I've committed my commloops code to squid-HEAD.
> > > As usual, I've laid a tag before and after - PRE|POST_COMMLOOPS_20020226.
> > > Feel free to verify that I didn't screw up .. I'm going to bed.
> > > :)
> >
> > Just gave it a try and it failed:
>
> Right. Can you print out sc->cmp_offset and copy_offset ?

(gdb) frame 4
#4 0x08093122 in storeClientCopy (sc=0x84596d8, e=0x8459560, copy_offset=200,
    size=4096,
    buf=0x8451a5c "ICY 200 OK\r\nicy-notice1:<BR>This stream requires <a href=\"http://www.winamp.com/\">Winamp</a><BR>\r\nicy-notice2:SHOUTcast Distributed Network Audio Server/FreeBSD4 v1.8.3<BR>\r\nicy-name:D I G I T A L L Y"...,
    callback=0x805da10 <clientSendMoreData>, data=0x8451848)
    at store_client.c:211
211 assert(sc->cmp_offset == copy_offset);
(gdb) print *sc
$1 = {type = 1, copy_offset = 3896, cmp_offset = 4096, copy_size = 200,
  copy_buf = 0x0, callback = 0, callback_data = 0x8451848, entry = 0x8459560,
  swapin_sio = 0x0, flags = {disk_io_pending = 0, store_copying = 0,
    copy_event_pending = 0}, delay_id = 131073, node = {data = 0x84596d8,
    prev = 0x0, next = 0x0}}
(gdb) print copy_offset
$2 = 200

>
> Whatever that condition is needs to be sorted out. Can you
> reliably reproduce it?

Nope. I can run squid from gdb and wait for it if you tell me what to do
when it happens.

>
>
>
>
> Adrian
>
>
> > #0 0x400d07f1 in __kill () from /lib/i686/libc.so.6
> > #1 0x400d05ca in raise (sig=6) at ../sysdeps/posix/raise.c:27
> > #2 0x400d1d72 in abort () at ../sysdeps/generic/abort.c:88
> > #3 0x08063e6d in xassert (msg=0x80c0623 "sc->cmp_offset == copy_offset",
> > file=0x80c0507 "store_client.c", line=211) at debug.c:270
> > #4 0x08093122 in storeClientCopy (sc=0x84596d8, e=0x8459560, copy_offset=200,
> > size=4096,
> > buf=0x8451a5c "ICY 200 OK\r\nicy-notice1:<BR>This stream requires <a href=\"http://www.winamp.com/\">Winamp</a><BR>\r\nicy-notice2:SHOUTcast Distributed Network Audio Server/FreeBSD4 v1.8.3<BR>\r\nicy-name:D I G I T A L L Y"...,
> > callback=0x805da10 <clientSendMoreData>, data=0x8451848)
> > at store_client.c:211
> > #5 0x0805e2c0 in clientWriteComplete (fd=59, bufnotused=0x0, size=200,
> > errflag=0, data=0x8451848) at client_side.c:1780
> > #6 0x08060adc in CommWriteStateCallbackAndFree (fd=59, code=0) at comm.c:100
> > #7 0x08062458 in commHandleWrite (fd=59, data=0x8419b60) at comm.c:892
> > #8 0x08063346 in comm_select (msec=0) at comm_poll.c:463
> > #9 0x08081db7 in main (argc=2, argv=0xbffffa34) at main.c:725
> > #10 0x400bf177 in __libc_start_main (main=0x8081a20 <main>, argc=2,
> > ubp_av=0xbffffa34, init=0x8049bb8 <_init>, fini=0x80aa700 <_fini>,
> > rtld_fini=0x4000e184 <_dl_fini>, stack_end=0xbffffa2c)
> > at ../sysdeps/generic/libc-start.c:129
> >
> > This is on Linux 2.4, squid is compiled with "--disable-async-io \
> > --disable-pthreads --enable-storeio=null,ufs,diskd \
> > --enable-policies=lru,heap --enable-unlinkd --disable-cache-digests \
> > --enable-delay-pools --enable-linux-netfilter"
> >
> > >
> > >
> > > Adrian
> >
> > :wq
> > With best regards,
> > Vladimir Savkin.
> >

:wq
                                        With best regards,
                                           Vladimir Savkin.
Received on Wed Feb 27 2002 - 02:40:04 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:14:49 MST