From alsa-devel-owner@alsa.jcu.cz  Mon Oct  5 15:38:16 1998
Received: from gw-nl1.philips.com (gw-nl1.philips.com [192.68.44.33])
	by marvin.jcu.cz (8.9.1a/8.9.1) with ESMTP id PAA30013
	for <alsa-devel@jcu.cz>; Mon, 5 Oct 1998 15:38:09 +0200
Received: from smtprelay-nl1.philips.com (localhost.philips.com [127.0.0.1])
          by gw-nl1.philips.com with ESMTP id PAA08678;
          Mon, 5 Oct 1998 15:37:51 +0200 (MEST)
          (envelope-from guenter.geiger@psp-vie.be.philips.com)
Received: from sunnm.austria.cp.philips.com (sunnm.austria.cp.philips.com [130.146.10.240]) 
	by smtprelay-nl1.philips.com (8.8.5/8.6.10-1.2.2m-970826) with ESMTP id PAA11560; Mon, 5 Oct 1998 15:37:49 +0200 (MET DST)
Received: from pspvie03.pspvie (pspvie03.psp-vie.be.philips.com [130.146.61.3])
	by sunnm.austria.cp.philips.com (8.8.8/8.8.8) with ESMTP id PAA39176;
	Mon, 5 Oct 1998 15:38:37 +0200
Received: from pc-61-95.at.ds.philips.com ([130.146.61.95]) by pspvie03.pspvie with SMTP (Microsoft Exchange Internet Mail Service Version 5.5.1960.3)
	id 4J470GPS; Mon, 5 Oct 1998 15:38:50 +0200
Received: by pc-61-95.at.ds.philips.com with Microsoft Mail
	id <01BDF076.1A01BA90@pc-61-95.at.ds.philips.com>; Mon, 5 Oct 1998 15:37:46 -0700
Message-ID: <01BDF076.1A01BA90@pc-61-95.at.ds.philips.com>
From: Guenter Geiger <guenter.geiger@psp-vie.be.philips.com>
To: Guenter Geiger <guenter.geiger@psp-vie.be.philips.com>,
        "'Thomas Sailer'"
	 <sailer@ife.ee.ethz.ch>
Cc: "alsa-devel@jcu.cz" <alsa-devel@jcu.cz>
Subject: RE: PCM mixing draft v0.2
Date: Mon, 5 Oct 1998 15:37:45 -0700
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list


>Guenter Geiger wrote:
>> 
>> Is it possible to access user memory from within interrupts routines?
>> If it were possible, all audio queues could be held in userland and the driver just fills the (relatively small)
>> dma buffers.  Does that make any sense to anybody ?

Tom:
>Not generally. You might get a paging exception in intr routine. If you make sure that
>the user memory is pinned down then maybe, but this starts to get messy
>(think of race conditions)

Ok, Audio Queues should be made non-swapable.
Race conditions could only occur between the interrupt routine (the audio driver) and the process holding the
queue, and this would be actually only one variable, the current queuesize. Read and write pointers will only
be changed by one of the two processes, so this could be handled somehow ... or do I still miss the point ?

G 


