]>
git.tue.mpg.de Git - paraslash.git/log
Andre Noll [Sun, 20 Apr 2008 19:24:11 +0000 (21:24 +0200)]
Update documentation of filter_pre_select().
Andre Noll [Sun, 20 Apr 2008 19:06:21 +0000 (21:06 +0200)]
Remove unused WAV_FILTER_NUM.
Andre Noll [Sun, 20 Apr 2008 18:58:40 +0000 (20:58 +0200)]
filter.c: Cosmetics.
Andre Noll [Sun, 20 Apr 2008 18:55:15 +0000 (20:55 +0200)]
filter.c: Handle filter errors gracefully.
Free the filter chain struct on errors and do not try to
close filters that haven't been opened.
Andre Noll [Sun, 20 Apr 2008 18:01:22 +0000 (20:01 +0200)]
audiod.c: Use correct size for filter node array.
The previous code worked only by accident because struct
filter_chain is larger than struct filter_node.
Andre Noll [Tue, 15 Apr 2008 05:47:47 +0000 (07:47 +0200)]
Make hover on the gitweb page work as on the other web pages.
Andre Noll [Tue, 15 Apr 2008 05:24:44 +0000 (07:24 +0200)]
audiod: Do not restart the receiver too early.
Wait at least until the receiver node has been closed.
Andre Noll [Tue, 15 Apr 2008 04:49:22 +0000 (06:49 +0200)]
Call init_afs() _before_ setting up signal handlers.
afs has its own signal handling.
Andre Noll [Sat, 12 Apr 2008 19:42:10 +0000 (21:42 +0200)]
server.c: Add some more Doxygen links.
Andre Noll [Sat, 12 Apr 2008 19:41:47 +0000 (21:41 +0200)]
web/index.html: Fix link to man pages.
Andre Noll [Sat, 12 Apr 2008 19:41:22 +0000 (21:41 +0200)]
Doxyfile: Add HAVE_FAAD to INCLUDE_FILE_PATTERNS.
Andre Noll [Sat, 12 Apr 2008 18:17:56 +0000 (20:17 +0200)]
Replace ipc error codes by system error codes.
Andre Noll [Sat, 12 Apr 2008 18:02:23 +0000 (20:02 +0200)]
ipc.c: Cosmetics.
Andre Noll [Sat, 12 Apr 2008 17:46:37 +0000 (19:46 +0200)]
com_si(): Report also the afs pid.
Replace mmd->server_pid by mmd->afs_pid because everybody
can easily find out the server pid.
Andre Noll [Sat, 12 Apr 2008 17:34:04 +0000 (19:34 +0200)]
Simplify vss_status_tohuman() and add a comment.
Andre Noll [Sat, 12 Apr 2008 17:22:08 +0000 (19:22 +0200)]
command.c: Remove a useless use of the mmd lock.
Andre Noll [Sat, 12 Apr 2008 17:18:58 +0000 (19:18 +0200)]
Kill mmd_lock() and mmd_unlock().
They were only wrappers for mutex_lock() and mutex_unlock().
So export the lock, use mutex_lock() and mutex_unlock()
everywhere and remove the wrappers.
Andre Noll [Sat, 12 Apr 2008 17:02:21 +0000 (19:02 +0200)]
Fix documentation of cq_update().
Andre Noll [Sat, 12 Apr 2008 17:01:47 +0000 (19:01 +0200)]
Make para_server use the generic scheduling code.
Andre Noll [Sat, 12 Apr 2008 14:25:13 +0000 (16:25 +0200)]
Introduce sched->select_function.
para_server needs this for locking.
Andre Noll [Sat, 12 Apr 2008 14:23:42 +0000 (16:23 +0200)]
audiod.c: Fix signal number in log output.
Andre Noll [Sat, 12 Apr 2008 14:22:59 +0000 (16:22 +0200)]
Make scheduler structs static.
Andre Noll [Sat, 12 Apr 2008 12:37:07 +0000 (14:37 +0200)]
vss: Include map in the vss task struct.
Andre Noll [Sat, 12 Apr 2008 12:35:16 +0000 (14:35 +0200)]
chunk_queue: Store a pointer to the data and the chunk size.
Storing the chunk number has the disadvantage that the
queuing code must call into vss to get the chunk. This
is unneccessary and requires the map pointer of vss.c
to be global.
Andre Noll [Sat, 12 Apr 2008 12:12:19 +0000 (14:12 +0200)]
Introduce the vss task.
Andre Noll [Sat, 12 Apr 2008 11:26:14 +0000 (13:26 +0200)]
server: Introduce server_command_task.
It's not a real task yet, but this change is a preparation
in order to convert para_server to the paraslash scheduling
system.
Andre Noll [Sat, 12 Apr 2008 11:02:47 +0000 (13:02 +0200)]
server: Fix stop mode.
Do not try to unmap the audio file twice.
Andre Noll [Sat, 12 Apr 2008 10:54:53 +0000 (12:54 +0200)]
server: Introduce command_{pre,post}_select().
Also make listen_fd global, and annotate handle_connect() with
__noreturn.
Andre Noll [Sat, 12 Apr 2008 10:00:22 +0000 (12:00 +0200)]
server.c: Introduce server_select().
Andre Noll [Sat, 12 Apr 2008 07:51:57 +0000 (09:51 +0200)]
Move struct senders[] from server.c to vss.c.
Andre Noll [Sat, 12 Apr 2008 07:46:40 +0000 (09:46 +0200)]
Init mmd->sender_cmd_data.cmd_num in vss_init().
Andre Noll [Sat, 12 Apr 2008 07:43:57 +0000 (09:43 +0200)]
Handle sender commands in vss_post_select().
Andre Noll [Sat, 12 Apr 2008 07:31:08 +0000 (09:31 +0200)]
Make vss_send_chunk() static.
Andre Noll [Sat, 12 Apr 2008 07:24:58 +0000 (09:24 +0200)]
Call sender functions from vss.c rather than from server.c.
Andre Noll [Sat, 12 Apr 2008 07:12:31 +0000 (09:12 +0200)]
Simplify vss_presselect().
Andre Noll [Sat, 12 Apr 2008 06:44:07 +0000 (08:44 +0200)]
Only call vss_eof() from vss_preselect().
Andre Noll [Sat, 12 Apr 2008 06:19:01 +0000 (08:19 +0200)]
vss: Check the afs socket either for reading or for writing.
Andre Noll [Sat, 12 Apr 2008 05:49:37 +0000 (07:49 +0200)]
Simplify vss_preselect().
Obviously an equivalent transformation.
Andre Noll [Sat, 12 Apr 2008 05:38:43 +0000 (07:38 +0200)]
vss_preselect(): Use single return.
Andre Noll [Sat, 12 Apr 2008 05:31:57 +0000 (07:31 +0200)]
Do not call vss_post_select() if para_select() failed.
Andre Noll [Fri, 11 Apr 2008 17:14:10 +0000 (19:14 +0200)]
new codename, reset version to git
Andre Noll [Fri, 11 Apr 2008 17:09:45 +0000 (19:09 +0200)]
the paraslash-0.3.2 release tarball
Andre Noll [Fri, 11 Apr 2008 17:05:47 +0000 (19:05 +0200)]
paraslash 0.3.2
Andre Noll [Fri, 11 Apr 2008 17:05:07 +0000 (19:05 +0200)]
Server/audiod option parsing improvements.
Do not refuse to start if -L is given in config file and -d at the
command line.
Without this patch, para_server and para_audiod would error out
complaining about -d requiring -L without even looking at the config
file.
Andre Noll [Thu, 10 Apr 2008 04:59:54 +0000 (06:59 +0200)]
Kill unused error code AFS_PARENT_DIED.
Andre Noll [Thu, 10 Apr 2008 04:55:31 +0000 (06:55 +0200)]
audioc: Make all fds non-blocking.
Andre Noll [Mon, 7 Apr 2008 17:46:57 +0000 (19:46 +0200)]
Do not call close_listed_fds() in para_exec().
para_fade and para_gui, the only two users of exec.o, do not care
about the close on fork list. So do not link close_on_fork.o into
these executables.
Andre Noll [Mon, 7 Apr 2008 17:36:14 +0000 (19:36 +0200)]
exec and fade cleanups.
Use para_open in exec.c and add error logging.
fade.c: Add proper error return values and error checking.
Andre Noll [Sun, 6 Apr 2008 12:38:29 +0000 (14:38 +0200)]
Get rid of E_MUNMAP.
Use the system error code instead.
Andre Noll [Sun, 6 Apr 2008 10:50:29 +0000 (12:50 +0200)]
client.c: supervisor task should use post_select instead of pre_select.
This allows to get rid of the ugly min_delay hack. This works
because the supervisor task is registered _after_ the client
task. So when the client task changes its state to either
CL_RECEIVING or CL_SENDING in its post_select function, the
supervisor task will start the stdin/stout task in the same
iteration of the scheduler post_select loop.
Andre Noll [Sun, 6 Apr 2008 10:33:46 +0000 (12:33 +0200)]
Fix NULL pointer dereference for stdin commands.
Andre Noll [Sat, 5 Apr 2008 21:52:57 +0000 (23:52 +0200)]
afh.ggo: Clarify --no_header help text.
Andre Noll [Sat, 5 Apr 2008 21:52:03 +0000 (23:52 +0200)]
para_afh: Accept negative values for begin_chunk and end_chunk.
Negative values are interpreted as offsets counted from the
end of the audio file.
Andre Noll [Fri, 4 Apr 2008 12:41:10 +0000 (14:41 +0200)]
Fix the man page generation fix.
Andre Noll [Fri, 4 Apr 2008 12:19:45 +0000 (14:19 +0200)]
Merge commit 'remotes/lamarck/master'
Andre Noll [Fri, 4 Apr 2008 12:40:05 +0000 (14:40 +0200)]
configure.ac: Fix afh_ldflags on Solaris.
For some reason, Solaris needs -logg.
Andre Noll [Fri, 4 Apr 2008 12:39:48 +0000 (14:39 +0200)]
audiod.c Solaris needs signal.h.
Andre Noll [Fri, 4 Apr 2008 12:39:33 +0000 (14:39 +0200)]
Fix generation of man pages on Solaris.
Solaris echo is too stupid to tell.
Andre Noll [Fri, 4 Apr 2008 12:19:43 +0000 (14:19 +0200)]
configure.ac: Update configure output of the paraslash configuration.
Andre Noll [Wed, 2 Apr 2008 23:11:42 +0000 (01:11 +0200)]
Rewrite audiod help text.
Andre Noll [Wed, 2 Apr 2008 23:11:04 +0000 (01:11 +0200)]
Update help text for audiod's kill command.
Andre Noll [Wed, 2 Apr 2008 21:33:07 +0000 (23:33 +0200)]
audiod.ggo: Kill unused --stream_timeout option.
Andre Noll [Wed, 2 Apr 2008 21:08:09 +0000 (23:08 +0200)]
Grab cleanups and fixes.
Change semantics of the filter number to zero-based.
Andre Noll [Wed, 2 Apr 2008 20:24:01 +0000 (22:24 +0200)]
audiod: Fix decoder restart barrier.
Andre Noll [Wed, 2 Apr 2008 20:12:11 +0000 (22:12 +0200)]
Merge commit 'remotes/fml/master'
Andre Noll [Wed, 2 Apr 2008 20:12:07 +0000 (22:12 +0200)]
Update documentation of activate_grab_client().
Andre Noll [Wed, 2 Apr 2008 07:56:54 +0000 (09:56 +0200)]
Simplify activate_inactive_grab_clients().
Andre Noll [Tue, 1 Apr 2008 22:46:02 +0000 (00:46 +0200)]
NEWS update.
Andre Noll [Tue, 1 Apr 2008 22:41:49 +0000 (00:41 +0200)]
audiod: Get rid of the audiod task.
It's simpler to start/stop the decoders from status_pre_select()
because this is the point where we get the recent status info from
para_server.
In particular, this allows to kill the min_delay crap in
the audiod_pre_select() which now gets called from
status_pre_select(). Rename it to start_stop_decoders() as
this is what that function does.
Andre Noll [Tue, 1 Apr 2008 21:26:22 +0000 (23:26 +0200)]
Fix com_stat() for arguments greater than one.
It behaved like it was given a non-positive arg in this case.
Andre Noll [Tue, 1 Apr 2008 21:24:29 +0000 (23:24 +0200)]
Fix another bug in stdout.c.
This one caused the first chunk of data to be swallowed.
Andre Noll [Tue, 1 Apr 2008 20:42:17 +0000 (22:42 +0200)]
client.c: Add status info.
Andre Noll [Tue, 1 Apr 2008 20:42:00 +0000 (22:42 +0200)]
client.c: Fix error value of supervisor task.
Andre Noll [Tue, 1 Apr 2008 20:41:05 +0000 (22:41 +0200)]
Fix a bug in stdout.c.
Andre Noll [Tue, 1 Apr 2008 20:18:31 +0000 (22:18 +0200)]
Make unregister_task() static.
It has no more users outside sched.c.
Andre Noll [Tue, 1 Apr 2008 20:17:11 +0000 (22:17 +0200)]
Update documentation for stdin.c and stdout.c.
It contained some outdated comments.
Andre Noll [Tue, 1 Apr 2008 20:16:23 +0000 (22:16 +0200)]
stdin: Don't set sit->loaded.
It's pointless because the only users of stdin allocate a
static struct for the stdin task.
Andre Noll [Tue, 1 Apr 2008 20:09:41 +0000 (22:09 +0200)]
Fix two typos in stdin.c.
Andre Noll [Tue, 1 Apr 2008 20:07:56 +0000 (22:07 +0200)]
Kill unused wng_unregister().
Andre Noll [Tue, 1 Apr 2008 20:05:46 +0000 (22:05 +0200)]
wng_open(): Defer registering the wng task.
This way we do not have to unregister it on errors.
Andre Noll [Tue, 1 Apr 2008 20:01:28 +0000 (22:01 +0200)]
audiod: Rewrite status task logic.
As the status task does not use any file descriptors, it's
OK to do everything in one function. So kill status_post_select()
and move the code to status_pre_select().
Andre Noll [Tue, 1 Apr 2008 19:59:24 +0000 (21:59 +0200)]
unregister_task(): Print what caused the task to shutdown.
Andre Noll [Tue, 1 Apr 2008 19:57:33 +0000 (21:57 +0200)]
unregister_task(): Set error status to E_TASK_UNREGISTERED
This way the users know when it's safe to free the memory
containing the task struct.
Andre Noll [Tue, 1 Apr 2008 19:55:26 +0000 (21:55 +0200)]
kill_task(): Only set task error status.
It's not safe to call unregister_task() at this point as
this function might be called from pre_select() or post_select().
Just set the task's error value to -E_TASK_KILLED. The task
will then be unregistered on the next iteration of the
scheduler loop.
Andre Noll [Tue, 1 Apr 2008 17:01:40 +0000 (19:01 +0200)]
Merge commit 'remotes/fml/master'
Andre Noll [Tue, 1 Apr 2008 09:29:11 +0000 (11:29 +0200)]
afs.c: Make open_next_audio_file() static.
Andre Noll [Tue, 1 Apr 2008 09:28:52 +0000 (11:28 +0200)]
afs.c: Get rid of unregister_tasks().
Call shed_shutdown() instead. Also make read errors from the
afs - server pipe fatal.
Andre Noll [Mon, 31 Mar 2008 23:07:03 +0000 (01:07 +0200)]
audiod: Don't unregister tasks, just set the error value.
This is a first step to get rid of unregister_task().
Andre Noll [Mon, 31 Mar 2008 22:23:58 +0000 (00:23 +0200)]
filter: Switch from linked lists to arrays.
The number of filters is known and never changes, so it's easier
to use arrays.
Andre Noll [Mon, 31 Mar 2008 20:35:06 +0000 (22:35 +0200)]
sched: Only call pre/post select hooks if tasks are not in error state.
Andre Noll [Mon, 31 Mar 2008 17:08:34 +0000 (19:08 +0200)]
Fix afs shutdown.
In case para_server dies, the afs process must unregister all
tasks in order to shut down cleanly.
Andre Noll [Mon, 31 Mar 2008 12:02:15 +0000 (14:02 +0200)]
Documentation updates and cleanups.
Andre Noll [Mon, 31 Mar 2008 11:56:15 +0000 (13:56 +0200)]
sched.c: Cosmetic cleanups.
Andre Noll [Mon, 31 Mar 2008 11:52:51 +0000 (13:52 +0200)]
afs: Shutdown the scheduler if a fatal signal was caught.
This fixes the problem that the afs database was not marked clean
and thus had to be checked if para_server was interupted by a
signal.
Andre Noll [Mon, 31 Mar 2008 11:51:02 +0000 (13:51 +0200)]
Export sched_shutdown().
Andre Noll [Mon, 31 Mar 2008 11:50:43 +0000 (13:50 +0200)]
sched.c: Add checks for empty lists.
This allows to call shed_shutdown() from the pre/post select hooks
of the tasks.
Andre Noll [Mon, 31 Mar 2008 11:15:37 +0000 (13:15 +0200)]
audiod.c: Fix stat task restarting.
Andre Noll [Mon, 31 Mar 2008 11:11:46 +0000 (13:11 +0200)]
ungegister_task(): Set task error value to -E_TASK_KILLED.
This way, one can be sure that a negative value in t->error means
this task will not be scheduled again.
Andre Noll [Sun, 30 Mar 2008 20:56:16 +0000 (22:56 +0200)]
Simplify the scheduling code.
- Get rid of sched->select_ret. Tasks shouldn't care about the
return value of the select call.
- Kill task->private_data. Use container_of() instead.
- Remove task->event_handler. It is never necessary and only
makes the code more convoluted. The scheduler unregisters
tasks as soon as either the pre_select or the post_select
functions return an error.
- Rename task->ret to task->error and get rid of a couple
of error fields in other structs that usually only contained
a copy of the task's error value.
This conversion likely introduces many bugs that have to be
shaken out in subsequent patches. Hopefully it will result in
less error-prone code in the long run.
Andre Noll [Sun, 30 Mar 2008 14:21:02 +0000 (16:21 +0200)]
Add documentation for the loglevel argument of para_server.