[Xenomai-git] Jan Kiszka : RTDM: Properly clean up on xnvfile setup errors
Module: xenomai-jki Branch: for-upstream Commit: 074d41c7f41b8c2190fdac95767624760318fa3c URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=074d41c7f41b8c2190fdac95767624760318fa3c Author: Jan Kiszka jan.kis...@siemens.com Date: Fri Aug 20 14:44:40 2010 +0200 RTDM: Properly clean up on xnvfile setup errors Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- ksrc/skins/rtdm/proc.c | 14 +- 1 files changed, 9 insertions(+), 5 deletions(-) diff --git a/ksrc/skins/rtdm/proc.c b/ksrc/skins/rtdm/proc.c index cd6802c..f898608 100644 --- a/ksrc/skins/rtdm/proc.c +++ b/ksrc/skins/rtdm/proc.c @@ -403,25 +403,29 @@ int __init rtdm_proc_init(void) /* Initialise vfiles */ ret = xnvfile_init_dir(rtdm, rtdm_vfroot, nkvfroot); if (ret) - return ret; + goto error; ret = xnvfile_init_regular(named_devices, named_vfile, rtdm_vfroot); if (ret) - return ret; + goto error; ret = xnvfile_init_regular(protocol_devices, proto_vfile, rtdm_vfroot); if (ret) - return ret; + goto error; ret = xnvfile_init_regular(open_fildes, openfd_vfile, rtdm_vfroot); if (ret) - return ret; + goto error; ret = xnvfile_init_regular(fildes, allfd_vfile, rtdm_vfroot); if (ret) - return ret; + goto error; return 0; + +error: + rtdm_proc_cleanup(); + return ret; } void rtdm_proc_cleanup(void) ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Jan Kiszka : RTDM: Extend device name space in open_fildes proc output
Module: xenomai-jki Branch: for-upstream Commit: c4f3c76c7c1ee5a489e36cfa08c71a03d0327fe9 URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=c4f3c76c7c1ee5a489e36cfa08c71a03d0327fe9 Author: Jan Kiszka jan.kis...@siemens.com Date: Fri Aug 20 14:51:18 2010 +0200 RTDM: Extend device name space in open_fildes proc output Device names can be up to 31 characters long. Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- ksrc/skins/rtdm/proc.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ksrc/skins/rtdm/proc.c b/ksrc/skins/rtdm/proc.c index f898608..4c91368 100644 --- a/ksrc/skins/rtdm/proc.c +++ b/ksrc/skins/rtdm/proc.c @@ -227,7 +227,7 @@ static int openfd_show(struct xnvfile_regular_iterator *it, void *data) spl_t s; if (data == NULL) { - xnvfile_puts(it, Index\tLocked\tDevice\t\tOwner [PID]\n); + xnvfile_puts(it, Index\tLocked\tDevice\t\t\t\tOwner [PID]\n); return 0; } @@ -252,7 +252,7 @@ static int openfd_show(struct xnvfile_regular_iterator *it, void *data) xnlock_put_irqrestore(rt_fildes_lock, s); - xnvfile_printf(it, %d\t%d\t%-15s %s [%d]\n, fd, + xnvfile_printf(it, %d\t%d\t%-31s %s [%d]\n, fd, close_lock_count, (device-device_flags RTDM_NAMED_DEVICE) ? device-device_name : device-proc_name, ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Jan Kiszka : Fix symbolic status ouput of root threads
Module: xenomai-jki Branch: for-upstream Commit: 3bd55b12708bd6ead6b8c01a279b846109452670 URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=3bd55b12708bd6ead6b8c01a279b846109452670 Author: Jan Kiszka jan.kis...@siemens.com Date: Fri Aug 20 14:51:55 2010 +0200 Fix symbolic status ouput of root threads Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- ksrc/nucleus/thread.c |4 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/ksrc/nucleus/thread.c b/ksrc/nucleus/thread.c index 73163f2..ac38144 100644 --- a/ksrc/nucleus/thread.c +++ b/ksrc/nucleus/thread.c @@ -219,6 +219,10 @@ char *xnthread_format_status(xnflags_t status, char *buf, int size) case XNROOT: c = 'R'; /* Always mark root as runnable. */ break; + case XNREADY: + if (status XNROOT) + continue; /* Already reported on XNROOT. */ + break; case XNDELAY: /* * Only report genuine delays here, not timed ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Jan Kiszka : native: Improve documentation of rt_task_join and rt_task_delete
Module: xenomai-jki Branch: for-upstream Commit: ca555932c2d67edefec4746999e9770575cf4b2f URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=ca555932c2d67edefec4746999e9770575cf4b2f Author: Jan Kiszka jan.kis...@siemens.com Date: Fri Aug 20 16:22:55 2010 +0200 native: Improve documentation of rt_task_join and rt_task_delete Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- ksrc/skins/native/task.c | 16 ++-- 1 files changed, 14 insertions(+), 2 deletions(-) diff --git a/ksrc/skins/native/task.c b/ksrc/skins/native/task.c index 6d2472e..31c700f 100644 --- a/ksrc/skins/native/task.c +++ b/ksrc/skins/native/task.c @@ -588,6 +588,10 @@ int rt_task_resume(RT_TASK *task) * * Rescheduling: always if @a task is NULL, and possible if the * deleted task is currently running into a safe section. + * + * @note A task that was successfully joined via rt_task_join() must not be + * explicitly deleted afterwards. However, invoking rt_task_join() remains + * mandatory for every joinable task even after calling rt_task_delete(). */ int rt_task_delete(RT_TASK *task) @@ -2407,8 +2411,10 @@ int rt_task_reply(int flowid, RT_TASK_MCB *mcb_s) * @brief Wait on the termination of a real-time task. * * This user-space only service blocks the caller in non-real-time context - * until @a task has terminated. Note that the specified task must have - * been created with the T_JOINABLE mode flag set. + * until @a task has terminated. All real-time kernel resources are released + * after successful completion of this service. Note that the specified task + * must have been created by the same process that wants to join it, and the + * T_JOINABLE mode flag must have been set on creation. * * @param task The address of a task descriptor to join. * @@ -2419,11 +2425,17 @@ int rt_task_reply(int flowid, RT_TASK_MCB *mcb_s) * * - -EDEADLK is returned if @a task refers to the caller. * + * - -ESRCH is returned if @a task no longer exists or refers to task created + * by a different process. + * * This service can be called from: * * - User-space task. * * Rescheduling: always unless the task was already terminated. + * + * @note After successful completion of this service it is neither required + * nor valid to additionally invoke rt_task_delete() on the same task. */ /** ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Stefan Kisdaroczi : RTDM device profiles: Document open_rt, socket_rt and close_rt deprecation
Module: xenomai-jki Branch: for-upstream Commit: fd6e1f343e494afbbcad99274e825b893bc98ad9 URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=fd6e1f343e494afbbcad99274e825b893bc98ad9 Author: Stefan Kisdaroczi ki...@hispeed.ch Date: Wed May 19 11:31:00 2010 +0200 RTDM device profiles: Document open_rt, socket_rt and close_rt deprecation Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- include/rtdm/rtcan.h |4 ++-- include/rtdm/rtserial.h |4 ++-- include/rtdm/rttesting.h |4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/rtdm/rtcan.h b/include/rtdm/rtcan.h index 43399e2..34a2044 100644 --- a/include/rtdm/rtcan.h +++ b/include/rtdm/rtcan.h @@ -59,7 +59,7 @@ * @par Supported Operations * @n * @b Socket @n - * Environments: non-RT (RT optional)@n + * Environments: non-RT (RT optional, deprecated)@n * @n * Specific return values: * - -EPROTONOSUPPORT (Protocol is not supported by the driver. @@ -72,7 +72,7 @@ * Blocking calls to any of the @ref Send or @ref Recv Receive functions * will be unblocked when the socket is closed and return with an error. @n * @n - * Environments: non-RT (RT optional)@n + * Environments: non-RT (RT optional, deprecated)@n * @n * Specific return values: none @n * @n diff --git a/include/rtdm/rtserial.h b/include/rtdm/rtserial.h index 48712b2..00dc536 100644 --- a/include/rtdm/rtserial.h +++ b/include/rtdm/rtserial.h @@ -42,11 +42,11 @@ * * @par Supported Operations * @b Open @n - * Environments: non-RT (RT optional)@n + * Environments: non-RT (RT optional, deprecated)@n * Specific return values: none @n * @n * @b Close @n - * Environments: non-RT (RT optional)@n + * Environments: non-RT (RT optional, deprecated)@n * Specific return values: none @n * @n * @b IOCTL @n diff --git a/include/rtdm/rttesting.h b/include/rtdm/rttesting.h index e936630..a3a7ae9 100644 --- a/include/rtdm/rttesting.h +++ b/include/rtdm/rttesting.h @@ -43,11 +43,11 @@ * * @par Supported Operations * @b Open @n - * Environments: non-RT (RT optional)@n + * Environments: non-RT (RT optional, deprecated)@n * Specific return values: none @n * @n * @b Close @n - * Environments: non-RT (RT optional)@n + * Environments: non-RT (RT optional, deprecated)@n * Specific return values: none @n * @n * @b IOCTL @n ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Jan Kiszka : nucleus: Fix lock imbalance in registry_proc_callback
Module: xenomai-jki Branch: for-upstream Commit: 02fef20f07b86b03ea36713a874dc25d7dadd84b URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=02fef20f07b86b03ea36713a874dc25d7dadd84b Author: Jan Kiszka jan.kis...@siemens.com Date: Tue Aug 24 16:14:04 2010 +0200 nucleus: Fix lock imbalance in registry_proc_callback Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- ksrc/nucleus/registry.c |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/ksrc/nucleus/registry.c b/ksrc/nucleus/registry.c index 9a6f66e..01d2f6a 100644 --- a/ksrc/nucleus/registry.c +++ b/ksrc/nucleus/registry.c @@ -303,7 +303,8 @@ static DECLARE_WORK_FUNC(registry_proc_callback) xnvfile_destroy_dir(rdir); xnlock_get_irqsave(nklock, s); object-pnode = NULL; - } + } else + xnlock_get_irqsave(nklock, s); continue; ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Jan Kiszka : x86: Add PCI ID of Series 5/ 3400 Intel chipset to SMI workaround
Module: xenomai-jki Branch: for-upstream Commit: e08bd8b2e700ed4202d3c36a5ec4c80349f95e98 URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=e08bd8b2e700ed4202d3c36a5ec4c80349f95e98 Author: Jan Kiszka jan.kis...@siemens.com Date: Fri Oct 1 01:51:08 2010 +0200 x86: Add PCI ID of Series 5/3400 Intel chipset to SMI workaround Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- include/asm-generic/pci_ids.h |3 +++ ksrc/arch/x86/smi.c |1 + 2 files changed, 4 insertions(+), 0 deletions(-) diff --git a/include/asm-generic/pci_ids.h b/include/asm-generic/pci_ids.h index 4dfb7be..3c540aa 100644 --- a/include/asm-generic/pci_ids.h +++ b/include/asm-generic/pci_ids.h @@ -16,6 +16,9 @@ #ifndef PCI_DEVICE_ID_INTEL_ICH10_1 #define PCI_DEVICE_ID_INTEL_ICH10_1 0x3a16 #endif +#ifndef PCI_DEVICE_ID_INTEL_PCH_LPC_MIN +#define PCI_DEVICE_ID_INTEL_PCH_LPC_MIN 0x3b00 +#endif /* RTCAN */ #ifndef PCI_VENDOR_ID_ESDGMBH diff --git a/ksrc/arch/x86/smi.c b/ksrc/arch/x86/smi.c index 93b5585..67822e6 100644 --- a/ksrc/arch/x86/smi.c +++ b/ksrc/arch/x86/smi.c @@ -50,6 +50,7 @@ static struct pci_device_id rthal_smi_pci_tbl[] = { {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH7_1)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_4)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_1)}, + {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PCH_LPC_MIN+7)}, {0,}, }; ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Jan Kiszka : x86: Add PCI ID of Intel ICH9M-E chipset to SMI workaround
Module: xenomai-jki Branch: for-upstream Commit: be470cd919aeb1adc3c04cf0e4248d436b48cde1 URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=be470cd919aeb1adc3c04cf0e4248d436b48cde1 Author: Jan Kiszka jan.kis...@siemens.com Date: Fri Oct 1 13:49:56 2010 +0200 x86: Add PCI ID of Intel ICH9M-E chipset to SMI workaround Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- include/asm-generic/pci_ids.h |3 +++ ksrc/arch/x86/smi.c |1 + 2 files changed, 4 insertions(+), 0 deletions(-) diff --git a/include/asm-generic/pci_ids.h b/include/asm-generic/pci_ids.h index 0020757..cdd590f 100644 --- a/include/asm-generic/pci_ids.h +++ b/include/asm-generic/pci_ids.h @@ -16,6 +16,9 @@ #ifndef PCI_DEVICE_ID_INTEL_ICH8_4 #define PCI_DEVICE_ID_INTEL_ICH8_4 0x2815 #endif +#ifdef PCI_DEVICE_ID_INTEL_ICH9_1 +#define PCI_DEVICE_ID_INTEL_ICH9_1 0x2917 +#endif #ifndef PCI_DEVICE_ID_INTEL_ICH10_1 #define PCI_DEVICE_ID_INTEL_ICH10_1 0x3a16 #endif diff --git a/ksrc/arch/x86/smi.c b/ksrc/arch/x86/smi.c index 0b0ae04..cb2c6e3 100644 --- a/ksrc/arch/x86/smi.c +++ b/ksrc/arch/x86/smi.c @@ -50,6 +50,7 @@ static struct pci_device_id rthal_smi_pci_tbl[] = { {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH7_0)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH7_1)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_4)}, + {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_1)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_1)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PCH_LPC_MIN+7)}, {0,}, ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git
[Xenomai-git] Jan Kiszka : x86: Add PCI ID of Intel ICH9M chipset to SMI workaround
Module: xenomai-jki Branch: for-upstream Commit: 8008ad5aac3ac6337cddcbd16971834b57ff693c URL: http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=8008ad5aac3ac6337cddcbd16971834b57ff693c Author: Jan Kiszka jan.kis...@siemens.com Date: Fri Oct 1 20:15:20 2010 +0200 x86: Add PCI ID of Intel ICH9M chipset to SMI workaround Signed-off-by: Jan Kiszka jan.kis...@siemens.com --- include/asm-generic/pci_ids.h |3 +++ ksrc/arch/x86/smi.c |1 + 2 files changed, 4 insertions(+), 0 deletions(-) diff --git a/include/asm-generic/pci_ids.h b/include/asm-generic/pci_ids.h index cdd590f..a56777a 100644 --- a/include/asm-generic/pci_ids.h +++ b/include/asm-generic/pci_ids.h @@ -19,6 +19,9 @@ #ifdef PCI_DEVICE_ID_INTEL_ICH9_1 #define PCI_DEVICE_ID_INTEL_ICH9_1 0x2917 #endif +#ifdef PCI_DEVICE_ID_INTEL_ICH9_5 +#define PCI_DEVICE_ID_INTEL_ICH9_5 0x2919 +#endif #ifndef PCI_DEVICE_ID_INTEL_ICH10_1 #define PCI_DEVICE_ID_INTEL_ICH10_1 0x3a16 #endif diff --git a/ksrc/arch/x86/smi.c b/ksrc/arch/x86/smi.c index cb2c6e3..d0b4e71 100644 --- a/ksrc/arch/x86/smi.c +++ b/ksrc/arch/x86/smi.c @@ -51,6 +51,7 @@ static struct pci_device_id rthal_smi_pci_tbl[] = { {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH7_1)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_4)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_1)}, + {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_5)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_1)}, {PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PCH_LPC_MIN+7)}, {0,}, ___ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git