Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jun 2004 14:18:11 -0500
From:      Dan Nelson <dnelson@allantgroup.com>
To:        Jake Scott <jake@poptart.org>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: NetBackup for Linux  [ioctl... is not implemented]
Message-ID:  <20040607191811.GA22645@dan.emsphone.com>
In-Reply-To: <40C388AA.6070509@poptart.org>
References:  <40C388AA.6070509@poptart.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In the last episode (Jun 06), Jake Scott said:
> I'm trying to get the Linux version of Veritas NetBackup 5.0 working
> on FreeBSD.  It mainly works, but after performing one backup, then
> fails to perform any others.
> 
> I've narrowed this down to a problem with "bpsched" interaction with
> the OS.  When it starts up, it creates seveal message queues which it
> normally removes when it exits.  Under the Linux emulation in
> FreeBSD, these message queues are not removed.  So - when it starts
> up again, it is unable to re-create them.

[going back to the top of the thread, so we can get this output:]
 
> There are a *lot* of these messasges in the system log:
> 
> linux: pid 2763 (bpsched): ioctl fd=5, cmd=0x8954 ('\M^I',84) is not implemented

This looks like it:

#define SIOCGARP        0x8954          /* get ARP table entry */

, which is not currently handled in linux_ioctl.c.  No idea why
NetBackup thinks it needs to get at the arp table.
 
> When starting up after the first time, the NetBackup bpsched log says:
> 
> <32> main_bpsched: error creating req message queue:  17

17 is EEXIST.  It could be differences between Linux and FreeBSD's
implementation of the msgget() function.  One thing to do would be to
see if the queues hang around after a backup on a Linux box.  On all of
my idle media servers, there is just a single queue:

q   2816   0x4c544952 -Rrw-rw-rw-     root    other     root    other      0       0  65536    3112  3079 13:55:40 13:55:40  9:27:02

0x4c544952 == 1280592210, so I think that first queue belongs there.

The other two probably should have disappeared.  It could be a problem
with removal of the queues after a backup finishes, but the docs for
both FreeBSD and Linux say that msgctl(id, IPC_RMID) removes the queue
even if there are processes waiting on it.  ktracing a process and
watching for the return value of any msgctl calls would be useful.

> <16> bpsched: scheduler exiting - error creating or getting message queue (209)
> 
> The output of "ipcs -a" shows the following in the Message Queues section:
> 
> q  65538 1280592210 --rw-rw-rw-     root    wheel     root    wheel       0      0  65536      0      0 no-entry no-entry 22:01:47
> q  65539 1093288528 --rw-------     root    wheel     root    wheel     296      1  65536   2853   2754 22:04:56 22:03:26 22:03:16
> q  65540 1331056194 --rw-------     root    wheel     root    wheel       0      0  65536   2763   2756 22:03:26 22:03:26 22:03:16
> 
> If I remove these, then I can do another backup.

-- 
	Dan Nelson
	dnelson@allantgroup.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040607191811.GA22645>