In nmbd.c(main) there is
DEBUG( 0, ( "Netbios nameserver version %s started.\n", SAMBA_VERSION_STRING) );
DEBUGADD( 0, ( "%s\n", COPYRIGHT_STARTUP_MESSAGE ) );
if ( !reload_nmbd_services(False) )
Since reopen_logs is called befor reload_nmbd_services, the smb.conf file is not available and the logfile is opend where the -l option specifies.
After a SIGHUP reopen_logs is called again and the parameter "log file" in smb.conf is now used and logging goes into the same file as smbd.
This is confusing. It should be decided and clearly documented, wether -l takes precedence over smb.conf or vice versa. Further a %-macro for the program name may be useful. log file = log.%x could then be used to separate log.smbd and log.nmbd