[Samba] Samba 3.2.6 upgrade -> smbd panic in printing.
Pedro at creativetools.se
Pedro at creativetools.se
Tue Dec 16 18:08:55 GMT 2008
> On Tue, Dec 16, 2008 at 08:57:14AM +0100, Pedro Rodrigues wrote:
>> Hello,
>>
>> upgraded to Samba 3.2.6, and immediately printing went into coma.
>> Observed
>> that printers lose their configurations (driver models, locations, etc).
>> And if I reset the printer drivers on each share, eventually they will
>> be
>> lost again.
>>
>> Looking at the logs we are getting panics like this:
>>
>> ---
>> [2008/12/16 05:12:51, 0] lib/util_tdb.c:tdb_log(682)
>> tdb(/var/lib/samba/printing/CanonC1.tdb): tdb_reopen: file dev/inode
>> has
>> changed!
>> [2008/12/16 05:12:51, 0] lib/util.c:reinit_after_fork(1050)
>> tdb_reopen_all failed.
>> [2008/12/16 05:12:51, 0]
>> printing/print_cups.c:cups_pcap_load_async(392)
>> cups_pcap_load_async: reinit_after_fork() failed
>> [2008/12/16 05:12:51, 0] lib/util.c:smb_panic(1663)
>> PANIC (pid 2590): cups_pcap_load_async: reinit_after_fork() failed
>> [2008/12/16 05:12:51, 0] lib/util.c:log_stack_trace(1767)
>> BACKTRACE: 11 stack frames:
>> #0 smbd(log_stack_trace+0x2d) [0x479c2f]
>> #1 smbd(smb_panic+0x84) [0x479d71]
>> #2 smbd(cups_cache_reload+0x299) [0x440d2c]
>> #3 smbd(pcap_cache_reload+0x107) [0x43d189]
>> #4 smbd(reload_printers+0x31) [0x6c477a]
>> #5 smbd(check_reload+0x130) [0x2c6510]
>> #6 smbd [0x2c655f]
>> #7 smbd(smbd_process+0xc92) [0x2c8a76]
>> #8 smbd(main+0x212c) [0x6c70ec]
>> #9 /lib/libc.so.6(__libc_start_main+0xdc) [0xdd9dec]
>> #10 smbd [0x24c061]
>> [2008/12/16 05:12:51, 0] lib/fault.c:dump_core(201)
>> dumping core in /var/log/samba/cores/smbd
>> ---
>>
>> These didn't exist before. I've already checked the tdb files for
>> corruption and cleaned some of them (the ones I can), with no luck.
>>
>> We are running Centos 5.2, by the way. Any ideas?
>
> This message is the key :
>
>> tdb(/var/lib/samba/printing/CanonC1.tdb): tdb_reopen: file dev/inode
>> has
>> changed!
>> [2008/12/16 05:12:51, 0] lib/util.c:reinit_after_fork(1050)
>> tdb_reopen_all failed.
>
> which causes a deliberate panic in the code here :
>
> /* Child. */
> if (!reinit_after_fork(smbd_messaging_context(), true)) {
> DEBUG(0,("cups_pcap_load_async: reinit_after_fork()
> failed\n"));
> smb_panic("cups_pcap_load_async: reinit_after_fork()
> failed");
> }
>
> How many printers do you have ? Do you have some sort of a batch
> job running that may delete printing tdb's ?
>
> Jeremy.
>
There are five printers, four of which with p&p drivers. And no, no batch
running, nothing that even touches the tdb files.
A ten minuet session of lsof shows only smbd accesses those tdb files. I
would be surprised if it was otherwise, since only Windows clients ever
hit this server.
/Pedro
More information about the samba
mailing list