Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Oct 2006 20:54:46 +0300 (EEST)
From:      Dmitry Pryanishnikov <dmitry@atlantis.dp.ua>
To:        Vivek Khera <vivek@khera.org>
Cc:        stable@freebsd.org
Subject:   Re: gmirror warnings
Message-ID:  <20061010203856.K68266@atlantis.atlantis.dp.ua>
In-Reply-To: <71E7CE6F-900A-419D-84C0-18B926377AED@khera.org>
References:  <71E7CE6F-900A-419D-84C0-18B926377AED@khera.org>

next in thread | previous in thread | raw e-mail | index | archive | help

Hello!

On Tue, 10 Oct 2006, Vivek Khera wrote:
> Over the weekend and today we got some curious error messages from gmirror 
> providers:
>
> Oct  7 03:02:14 dtfe2 kernel: ad6: FAILURE - out of memory in start
> Oct  7 04:15:58 dtfe2 kernel: ad4: FAILURE - out of memory in start
>
> Should I be worried about these warnings or are they just transient failures 
> that correct themselves?

   Those messages are not directly related to gmirror, they come from the ATA
driver when it can't allocate memory for the structure which describes
I/O request:

ata-disk.c:

static void
ad_strategy(struct bio *bp)
{
     device_t dev =  bp->bio_disk->d_drv1;
     struct ata_device *atadev = device_get_softc(dev);
     struct ata_request *request;

     if (!(request = ata_alloc_request())) {
         device_printf(dev, "FAILURE - out of memory in start\n");
         biofinish(bp, NULL, ENOMEM);
         return;
     }

ata-all.h:

#define ata_alloc_request() uma_zalloc(ata_request_zone, M_NOWAIT | M_ZERO)

Yes, message is somewhat confusing. Those situations will cause original
I/O request to fail with errno = ENOMEM. The cure for the problem is proper
tuning of the KVA-related values - too bad tuning(7) doesn't even mention
KVA or kmem. Off the memory, lowering this:

dmitry@homelynx$ sysctl vm.kmem_size_scale
vm.kmem_size_scale: 3

from the /boot/loader.conf, e.g.:

vm.kmem_size_scale=2

will give you more kernel virtual memory to burn. I'm sure that there are
more options, but they aren't documented ;(

Sincerely, Dmitry
-- 
Atlantis ISP, System Administrator
e-mail:  dmitry@atlantis.dp.ua
nic-hdl: LYNX-RIPE



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