Yair K. | 1 Aug 2008 14:20
Picon

Commit to generate oss_errno.h is faulty

Hi,

  Commit http://mercurial.opensound.com/?rev/500e9ed22afc to generate oss_errno.h dynamically has
two problems:

   1. If an error is defined as LONG_MIN, than abs(error) doesn't work (two's complement and all that). Haiku
defines ENOMEM like this: 
http://dev.haiku-os.org/browser/haiku/trunk/headers/os/support/Errors.h (hattip: François Revol).
   2. Some OSs don't declare EFAULT, EIDRM. kernel/framework/mixer/oss_mixer_core.c had some code to
redefine these if neccesary - this should be moved to "oss_errno.h".

Yours,
	Yair K.
Hannu Savolainen | 1 Aug 2008 21:52

Re: Commit to generate oss_errno.h is faulty

Yair K. wrote:
> Hi,
>
>   Commit http://mercurial.opensound.com/?rev/500e9ed22afc to generate oss_errno.h dynamically has
two problems:
>
>    1. If an error is defined as LONG_MIN, than abs(error) doesn't work (two's complement and all that). Haiku
defines ENOMEM like this: 
> http://dev.haiku-os.org/browser/haiku/trunk/headers/os/support/Errors.h (hattip: François Revol).
>    2. Some OSs don't declare EFAULT, EIDRM. kernel/framework/mixer/oss_mixer_core.c had some code to
redefine these if neccesary - this should be moved to "oss_errno.h".
>   
Does the current hg version work better?

Best regards,

Hannu
Yair K. | 1 Aug 2008 23:38
Picon

Re: Commit to generate oss_errno.h is faulty

On Friday 01 August 2008 22:52:40 Hannu Savolainen wrote:
> Yair K. wrote:
> > Hi,
> >
> >   Commit http://mercurial.opensound.com/?rev/500e9ed22afc to generate oss_errno.h dynamically
has two problems:
> >
> >    1. If an error is defined as LONG_MIN, than abs(error) doesn't work (two's complement and all that).
Haiku defines ENOMEM like this: 
> > http://dev.haiku-os.org/browser/haiku/trunk/headers/os/support/Errors.h (hattip: François Revol).
> >    2. Some OSs don't declare EFAULT, EIDRM. kernel/framework/mixer/oss_mixer_core.c had some code to
redefine these if neccesary - this should be moved to "oss_errno.h".
> >   
> Does the current hg version work better?

I think so.

Yours,
	Yair K.
François Revol | 1 Aug 2008 23:41
Picon
Favicon
Gravatar

Re: Commit to generate oss_errno.h is faulty

> >    1. If an error is defined as LONG_MIN, than abs(error) doesn't 
> > work
> >  (two's complement and all that). Haiku defines ENOMEM like this: 
> >   
> Does the current hg version work better?

Seems fine to me.

François.
Yair K. | 2 Aug 2008 23:06
Picon

[PATCH] workaround Ubuntu bug, and some misc. changes

Hi,

   Ubuntu has a bug[1] which causes `uname -r` and the kernel version reported via `ossvermagic -z -s` to not
match, making 'soundon' fail even when the same kernel is used for compiling the module and for loading it later.

   The attached patch saves the version of the running kernel used during "sh install.sh" in a new symbol
("__oss_link_vermagic") in osscore.ko (this is included via "ubuntu_version_hack.inc"). It makes
ossvermagic check for it if '-u' switch is used, which happens only if "soundon" can't get a match in
regular way. I don't think this should break anything, unless a rather twisted Linux system exists where
/lib/modules/`uname -r`/build is linked to a different kernel version than the one `uname -r` indicates...

  The patch also includes some unrelated misc. changes:
    A. cmd/ossxmix/ossxmix.c - call gdk_notify_startup_complete at cleanup(), so that if startup failed
notification won't stay stuck up until the DE decides to remove it.
    B. configure - unset CDPATH, to avoid 'cd $SRCDIR && pwd' failing if it's set. autoconf uses same trick, so
this should work portably[2].
    C. setup/Linux/oss/build/install.sh - call `uname -r` only once, and use that value (same is done for
soundon). Remove mentions of 'modules.inc.orig' now that osscore_symbols.inc is used instead.
    D. setup/Linux/oss/build/osscore.c - make strncpy, strcpy not increment s1 needlessly. Use correct
return type for new_ioctl_t to avoid harmless warning.
    E. setup/elflib.inc - use #ifdefs to avoid harmless 32/64 bit warning on printing shdr[i].sh_offset.
Allow list_symbols return something sane to avoid always returning 0 from ELF_LOAD_SYMTAB, so that
ossvermagic can avoid unneccesary checks.

Yours,
	Yair K.

[1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/247055
      https://bugs.launchpad.net/ubuntu/+source/linux/+bug/253391
[2] http://www.gnu.org/software/autoconf/manual/autoconf-2.57/html_chapter/autoconf_10.html#SEC121
(Continue reading)

Yair K. | 3 Aug 2008 14:02
Picon

[PATCH] Add Xonar DX support (by Mario Gobbels)

Hi,

   The attached patch (all by Mario Goebbels, I only did trivial modifications to clean it a bit) adds support
for the Asus Xonar DX cards to the oss_cmi878x driver. It is known to work for Mario and others using the
Xonar[1]. While it's far from perfect (e.g.  surround volume doesn't work), I've discussed this with
Mario by email and we both agree it's better to have this in the tree - any changes can proceed from here. Much
of the credit for the work so far goes to Clemens Ladisch, whose assistance was very helpful[2].

[1] e.g. http://4front-tech.com/forum/viewtopic.php?t=2666
[2] e.g. http://4front-tech.com/forum/viewtopic.php?t=2572

Yours,
	Yair K.
Attachment (xonar.diff.gz): application/x-gzip, 4314 bytes
_______________________________________________
oss-devel mailing list
oss-devel <at> mailman.opensound.com
http://mailman.opensound.com/mailman/listinfo/oss-devel
Yair K. | 3 Aug 2008 19:39
Picon

Re: [PATCH] Add Xonar DX support (by Mario Gobbels)

On Sunday 03 August 2008 15:02:37 Yair K. wrote:
> Hi,
> 
>    The attached patch (all by Mario Goebbels, I only did trivial modifications to clean it a bit) adds support
for the Asus Xonar DX cards to the oss_cmi878x driver.

Oh, there should be a MUTEX_EXIT in the OSS_EIO case in two_wire_write which isn't in the patch:

--- oss_cmi878x.c	2008-08-03 20:37:31.439245476 +0300
+++ oss_cmi878x.c	2008-08-03 20:34:56.417242953 +0300
 <at>  <at>  -403,6 +403,7  <at>  <at> 
   if(count == 0)
   {
 	cmn_err(CE_WARN, "Time out on Two-Wire interface (busy).");
+	MUTEX_EXIT(devc->dac_mutex, flags);
 	return OSS_EIO;
   }
   MUTEX_EXIT(devc->dac_mutex, flags);

Yours,
	Yair K.
Hannu Savolainen | 5 Aug 2008 22:58

Re: [PATCH] Add Xonar DX support (by Mario Gobbels)

Yair K. wrote:
> On Sunday 03 August 2008 15:02:37 Yair K. wrote:
>   
>> Hi,
>>
>>    The attached patch (all by Mario Goebbels, I only did trivial modifications to clean it a bit) adds
support for the Asus Xonar DX cards to the oss_cmi878x driver.
>>     
>
> Oh, there should be a MUTEX_EXIT in the OSS_EIO case in two_wire_write which isn't in the patch:
>
> --- oss_cmi878x.c	2008-08-03 20:37:31.439245476 +0300
> +++ oss_cmi878x.c	2008-08-03 20:34:56.417242953 +0300
>  <at>  <at>  -403,6 +403,7  <at>  <at> 
>    if(count == 0)
>    {
>  	cmn_err(CE_WARN, "Time out on Two-Wire interface (busy).");
> +	MUTEX_EXIT(devc->dac_mutex, flags);
>  	return OSS_EIO;
>    }
>    MUTEX_EXIT(devc->dac_mutex, flags);
>   
Ok. In the hg server now.

Best regards,

Hannu
Yair K. | 6 Aug 2008 19:45
Picon

[PATCH] Split ossrecord and other changes

Hi,

   The attached patch does the following:
     A) ossrecord - split into encoder, header writer and main.
         Add '-f' option to select the sample format, unmention '-b' (still silently accepted).
         Add '-F' option to select output's container format. Add support for AU and raw formats.
         '-v' and '-l' can now coexist.
         Numerous misc. changes.
     B) ossdetect - I broke '-i' last time. Fix this. Also print USB info only when in verbose mode, and print all
verbose info into stdout.
     C) soundon - Run "vmixctl attach /dev/dsp" at end to ensure default output has vmix attached. Accept tabs as
spaces in conf files, and do the sync a little later to ensure osscore loading message is in log.
     D) Update oss_imux man page, removed constants from vmix_core.c which broke FIXEDPOINT compile, modify 
ossplay a bit.

Yours,
	Yair K.
Attachment (ossrecord-and-misc.diff.gz): application/x-gzip, 16 KiB
_______________________________________________
oss-devel mailing list
oss-devel <at> mailman.opensound.com
http://mailman.opensound.com/mailman/listinfo/oss-devel
Hannu Savolainen | 6 Aug 2008 22:59

Re: [PATCH] Split ossrecord and other changes

Yair K. wrote:
> Hi,
>
>    The attached patch does the following:
>      A) ossrecord - split into encoder, header writer and main.
>          Add '-f' option to select the sample format, unmention '-b' (still silently accepted).
>          Add '-F' option to select output's container format. Add support for AU and raw formats.
>          '-v' and '-l' can now coexist.
>          Numerous misc. changes.
>      B) ossdetect - I broke '-i' last time. Fix this. Also print USB info only when in verbose mode, and print all
verbose info into stdout.
>      C) soundon - Run "vmixctl attach /dev/dsp" at end to ensure default output has vmix attached. Accept tabs
as spaces in conf files, and do the sync a little later to ensure osscore loading message is in log.
>      D) Update oss_imux man page, removed constants from vmix_core.c which broke FIXEDPOINT compile, modify 
> ossplay a bit.
>   
In the hg now. I had to do an one line change to ossrecord.h (missing 
static).

Best regards,

Hannu

Gmane