From f311caf984a46b8629f891de5904af385486fa9e Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 15 Mar 2022 17:34:34 +0100 Subject: bsps/irq: Improve affinity set handling Restrict the affinity set to the set of online processors. Make sure the affinity set for an interrupt vector contains at least one online processor. Update #3269. --- cpukit/include/rtems/rtems/intr.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'cpukit/include') diff --git a/cpukit/include/rtems/rtems/intr.h b/cpukit/include/rtems/rtems/intr.h index 573cdf6f17..c53cf694ba 100644 --- a/cpukit/include/rtems/rtems/intr.h +++ b/cpukit/include/rtems/rtems/intr.h @@ -7,7 +7,7 @@ */ /* - * Copyright (C) 2008, 2021 embedded brains GmbH (http://www.embedded-brains.de) + * Copyright (C) 2008, 2022 embedded brains GmbH (http://www.embedded-brains.de) * Copyright (C) 1988, 2008 On-Line Applications Research Corporation (OAR) * * Redistribution and use in source and binary forms, with or without @@ -1759,9 +1759,16 @@ rtems_status_code rtems_interrupt_get_affinity( * interrupt vector has not been satisfied. * * @par Notes + * @parblock * The rtems_interrupt_get_attributes() directive may be used to check if the * processor affinity of an interrupt vector can be set. * + * Only online processors of the affinity set specified by ``affinity_size`` + * and ``affinity`` are considered by the directive. Other processors of the + * set are ignored. If the set contains no online processor, then the set is + * invalid and an error status is returned. + * @endparblock + * * @par Constraints * @parblock * The following constraints apply to this directive: -- cgit v1.2.3