You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I just noticed that our system-wide non-archdep structures REGS, SYSBLK and DEVBLK each contain one or more archdep fields (RADR for example), which is a big no-no.
Architecture dependent fields vary in width depending on which architecure is currently being compiled (RADR for example is defined as U32 for 370 and 390 but as U64 for z/Arch), and global system-wide structures common to all architectures must be non-architecture dependent.
Each field in REGS, SYSBLK and DEVBLK should always have a known fixed width able to accomodate any/all of our supported build architectures. Architecture dependent functions accessing such fields should do so in an architecture dependent manner if needed, using our existing archdep macros designed specifically for such things (such using the 'GR' macro for accessing the general purpose registers array).
I haven't analyzed the impact of this bug yet but I suspect we've just been lucky so far (which doesn't exactly make me feel very good). I am creating this issue because I believe it would probably be best to change the use of RADR to U64 instead to prevent any surprises, but would like others' opinions regarding this issue before I do anything (although I might perform some experiments).
Feedback regarding this issue would be appreciated.
Thanks.
The text was updated successfully, but these errors were encountered:
Fish-Git
added
QUESTION...
A question was asked but has not been answered yet, -OR- additional feedback is requested.
Researching...
The issue is being looked into or additional information is being gathered/located.
labels
May 8, 2018
Fish-Git
changed the title
Use of architecture dependent fields in non-architecture dependent structures
Use of archdep fields in non-archdep structures
May 8, 2018
Fish-Git
changed the title
Use of archdep fields in non-archdep structures
Use of archdep fields in non-archdep structs
May 8, 2018
Fish-Git
added
the
Discussion
Developers are invited to discuss a design change or solution to a coding problem.
label
Jul 30, 2018
Fish-Git
added
HELP!
Help is needed from someone more experienced or I'm simply overloaded with too much work right now!
and removed
QUESTION...
A question was asked but has not been answered yet, -OR- additional feedback is requested.
labels
Aug 22, 2018
I just noticed that our system-wide non-archdep structures REGS, SYSBLK and DEVBLK each contain one or more archdep fields (RADR for example), which is a big no-no.
Architecture dependent fields vary in width depending on which architecure is currently being compiled (RADR for example is defined as U32 for 370 and 390 but as U64 for z/Arch), and global system-wide structures common to all architectures must be non-architecture dependent.
Each field in REGS, SYSBLK and DEVBLK should always have a known fixed width able to accomodate any/all of our supported build architectures. Architecture dependent functions accessing such fields should do so in an architecture dependent manner if needed, using our existing archdep macros designed specifically for such things (such using the 'GR' macro for accessing the general purpose registers array).
I haven't analyzed the impact of this bug yet but I suspect we've just been lucky so far (which doesn't exactly make me feel very good). I am creating this issue because I believe it would probably be best to change the use of RADR to U64 instead to prevent any surprises, but would like others' opinions regarding this issue before I do anything (although I might perform some experiments).
Feedback regarding this issue would be appreciated.
Thanks.
The text was updated successfully, but these errors were encountered: