userspace modules configuration problem and an oops
Marek Habersack
grendel at caudium.net
Tue Nov 16 03:28:07 UTC 2004
Hello list,
We've got a problem making userspace modules work to handle a single
extension instead of handling all the requests. Here's the setup:
/etc/tux.mime.types:
TUX/module htm
module name: qreplace.htm.so, loaded:
opening shared library /usr/lib/tux/modules/qreplace.htm.so
handle: 0x804efb0
TUXAPI_init: 0xb7dea029
TUXAPI_handle_events: 0xb7dea06d
register {qreplace.htm} - TUX returned 0...
tux configured to handle virtual hosts
Module gets initialized but never gets called for requests referencing .htm
files. If I read the Chapter 5 of the tux docs correctly, the above setup
should result in the qreplace.htm module being called to handle, e.g.,
test.htm request. What happens instead is that on the _first_ request to any
.htm file, tux keeps the browser busy and the connection open. Once the connection
is forcibly closed on the client side and the next request is made, tux serves the
referenced file without passing it to the userspace module and with the
text/plain type (a curious thing here: if I turn virtual hosts off, tux will
serve the same file with the text/html mime type instead of text/plain).
The above happens with tux A3 for 2.4 and tux A6 for 2.6.
Running tux userland without -d doesn't reveal any problems, syslog has no
messages from the kernel tux code either.
While testing the above, I've also came across another problem, this time an
oops (tux A6):
Nov 15 21:50:14 colo6 kernel: kernel BUG at fs/namei.c:481!
Nov 15 21:50:14 colo6 kernel: invalid operand: 0000 [#1]
Nov 15 21:50:14 colo6 kernel: Modules linked in:
Nov 15 21:50:14 colo6 kernel: CPU: 0
Nov 15 21:50:14 colo6 kernel: EIP: 0060:[link_path_walk+2269/2944] Not tainted VLI
Nov 15 21:50:14 colo6 kernel: EFLAGS: 00010216 (2.6.9)
Nov 15 21:50:14 colo6 kernel: EIP is at link_path_walk+0x8dd/0xb80
Nov 15 21:50:14 colo6 kernel: eax: dde20560 ebx: dd669e68 ecx: dc4d5410 edx: dc4d5470
Nov 15 21:50:14 colo6 kernel: esi: 00000000 edi: dd668000 ebp: dd669eac esp: dd669e30
Nov 15 21:50:14 colo6 kernel: ds: 007b es: 007b ss: 0068
Nov 15 21:50:14 colo6 kernel: Process async IO 0/1 (pid: 715, threadinfo=dd668000 task=dde20560)
Nov 15 21:50:14 colo6 kernel: Stack: dd669e68 dd669e6c dd669e68 00000000 dc4d5410 00000000 00000000 ffffffd8
Nov 15 21:50:14 colo6 kernel: 00000000 00000000 00000000 00000000 00000001 00000000 dfe81080 dc4d5410
Nov 15 21:50:14 colo6 kernel: ed5c7610 00000009 df53f9b0 dfd107e0 dd669eac 00000001 00000001 00000000
Nov 15 21:50:14 colo6 kernel: Call Trace:
Nov 15 21:50:14 colo6 kernel: [__tux_lookup+16/48] __tux_lookup+0x10/0x30
Nov 15 21:50:14 colo6 kernel: [tux_lookup+179/272] tux_lookup+0xb3/0x110
Nov 15 21:50:14 colo6 kernel: [lookup_url+112/1520] lookup_url+0x70/0x5f0
Nov 15 21:50:14 colo6 kernel: [schedule+670/1168] schedule+0x29e/0x490
Nov 15 21:50:14 colo6 kernel: [http_process_message+108/800] http_process_message+0x6c/0x320
Nov 15 21:50:14 colo6 kernel: [tux_schedule_atom+29/48] tux_schedule_atom+0x1d/0x30
Nov 15 21:50:14 colo6 kernel: [cachemiss_thread+424/464] cachemiss_thread+0x1a8/0x1d0
Nov 15 21:50:14 colo6 kernel: [default_wake_function+0/32] default_wake_function+0x0/0x20
Nov 15 21:50:14 colo6 kernel: [ret_from_fork+6/20] ret_from_fork+0x6/0x14
Nov 15 21:50:14 colo6 kernel: [default_wake_function+0/32] default_wake_function+0x0/0x20
Nov 15 21:50:14 colo6 kernel: [cachemiss_thread+0/464] cachemiss_thread+0x0/0x1d0
Nov 15 21:50:14 colo6 kernel: [kernel_thread_helper+5/24] kernel_thread_helper+0x5/0x18
Nov 15 21:50:14 colo6 kernel: Code: 1a 01 22 c1 34 c0 eb ec 0f 0b 1a 01 22 c1 34 c0 eb 98 89 2c 24 e8 74 f2 ff ff 8 9 f0 e9 4c fe ff ff e8 d8 b8 1e 00 e9 a7 fd ff ff <0f> 0b e1 01 ec ec 34 c0 e9 8f fd ff ff 89 2c 24 e8 4e f2 ff ff
It happens whenever a request is made that resolves to a symlink on the
filesystem (XFS in our case). After the oops tux cannot be stopped and the
machine must be rebooted.
Any clues as to what might be wrong with either the module setup and the
above oops? Thanks in advance,
marek
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/tux-list/attachments/20041116/cddf95ee/attachment.sig>
More information about the tux-list
mailing list