Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  closed
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:  fixed
 Keywords:   |  Blocked By:
 Blocking:   |
-+--
Changes (by Sebastian Huber):

 * status:  new => closed
 * resolution:   => fixed


Comment:

 All cpukit services use now self-contained objects, except:

 * gxx_wrappers.c (legacy, would need GCC patch)
 * ada_intrsupp.c (would need GCC patch)
 * libi2c.c (legacy, I2C drivers should use new framework)
 * sse_test.c (seems to be dead code)

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"9ace264875b64bfa36246d51f969c325bd0407b0/rtems"
 9ace2648/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="9ace264875b64bfa36246d51f969c325bd0407b0"
 fdt: Use self-contained mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"2fd3111708e92f683039d651dd1d756da3f4a8c2/rtems"
 2fd31117/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="2fd3111708e92f683039d651dd1d756da3f4a8c2"
 stdio-redirector: Use self-contained mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"3535439f5c5faffeabe0c8f4a4694f1b24352db5/rtems"
 3535439f/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="3535439f5c5faffeabe0c8f4a4694f1b24352db5"
 tftpfs: Use self-contained mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"87b7117ffdbed0afdafc929f1f6d864d6132e96a/rtems"
 87b7117f/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="87b7117ffdbed0afdafc929f1f6d864d6132e96a"
 libdl: Use self-contained mutex for RAP

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"2aa5b98c321f0926e9b4e1ee50eb986400423f65/rtems"
 2aa5b98/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="2aa5b98c321f0926e9b4e1ee50eb986400423f65"
 syslog: Use self-contained recursive mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"71a84461d59d28fa69731c4a0224f50978bdd6e5/rtems"
 71a8446/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="71a84461d59d28fa69731c4a0224f50978bdd6e5"
 libdl: Fix potential overwrite of dest buffer

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"d9800ac58d8da580053845c61f1633aec4fb107e/rtems"
 d9800ac/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="d9800ac58d8da580053845c61f1633aec4fb107e"
 libdl: Use self-contained recursive mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"0a593c2d3f2fb176591da4df9d15bed42453df41/rtems"
 0a593c2d/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="0a593c2d3f2fb176591da4df9d15bed42453df41"
 ftpd: Use self-contained synchronization objects

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"a59a61828b8cdabb448534044778e2c07da11dd3/rtems"
 a59a6182/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="a59a61828b8cdabb448534044778e2c07da11dd3"
 libblock: Use self-contained mutex for media

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"c8d5bed13cae21d2920b8f32a242ee1eacd88b81/rtems"
 c8d5bed/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="c8d5bed13cae21d2920b8f32a242ee1eacd88b81"
 libblock: Use self-contained mutex for nvdisk

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"868ca746c21c9cb0743bec597687b5354230c8ba/rtems"
 868ca746/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="868ca746c21c9cb0743bec597687b5354230c8ba"
 libblock: Use self-contained mutex for sparse disk

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-08 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"f9027ccfd35245017ef93fa4f7f0db59e83a0eaf/rtems"
 f9027ccf/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="f9027ccfd35245017ef93fa4f7f0db59e83a0eaf"
 libblock: Use self-contained mutex for flashdisk

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-07 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"e16111b2cf1640a2ddb1cf3910c76836f875d465/rtems"
 e16111b/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="e16111b2cf1640a2ddb1cf3910c76836f875d465"
 NFS: Fix use of self-contained objects

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-05 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  5.1
Component:  unspecified  | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--
Changes (by Sebastian Huber):

 * component:  bsps => unspecified
 * milestone:  6.1 => 5.1


--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-05 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"8b3da1329bc95d559ba1d7b562cbf93f9ca92156/rtems-libbsd"
 8b3da13/rtems-libbsd]:
 {{{
 #!CommitTicketReference repository="rtems-libbsd"
 revision="8b3da1329bc95d559ba1d7b562cbf93f9ca92156"
 termios: Update due to API changes

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-05 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"08514040bb4daec0e2b566e8ab3eee9037d64e5a/rtems-docs"
 0851404/rtems-docs]:
 {{{
 #!CommitTicketReference repository="rtems-docs"
 revision="08514040bb4daec0e2b566e8ab3eee9037d64e5a"
 c-user: Document obsolete termios config options

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-05 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"53b6484d3827fc93aae2d4c168cdbc07f8496eb9/rtems"
 53b6484/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="53b6484d3827fc93aae2d4c168cdbc07f8496eb9"
 termios: Remove obsolete configuration options

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-05 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"1472f8411b37795600fcf2cecac1f0fce0705590/rtems-docs"
 1472f84/rtems-docs]:
 {{{
 #!CommitTicketReference repository="rtems-docs"
 revision="1472f8411b37795600fcf2cecac1f0fce0705590"
 c-user: Add self-contained objects chapter

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-04 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |  Blocked By:
 Blocking:   |
-+--

Comment (by Chris Johns):

 These changes are fantastic. It is so nice after all this time to see the
 internal allocation issue being solved in this way. Thank you.

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"03e5a7800d31173434f98edc315d6e4be0bf13c2/rtems"
 03e5a780/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="03e5a7800d31173434f98edc315d6e4be0bf13c2"
 NFS: Use self-contained recursive mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"8ddd92d56ae7c30f086f69c8e2930b44c5a44f1c/rtems"
 8ddd92d/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="8ddd92d56ae7c30f086f69c8e2930b44c5a44f1c"
 pipe: Use self-contained mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"0940648f6fd85df7fe64a61c4eb3a041fe53f5a1/rtems"
 0940648f/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="0940648f6fd85df7fe64a61c4eb3a041fe53f5a1"
 RFS: Use self-contained recursive mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"3b77417ba7a6ad6cb6bbfaeccc4cfd0cd7198489/rtems"
 3b77417/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="3b77417ba7a6ad6cb6bbfaeccc4cfd0cd7198489"
 dosfs: Use self-contained recursive mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"b17bcb3855abff75117811fce528b26eb65539a0/rtems"
 b17bcb3/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="b17bcb3855abff75117811fce528b26eb65539a0"
 JFFS2: Use self-contained recursive mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"16fc3f9a5463dfbc7b942fd1ea1275eaa834e914/rtems"
 16fc3f9a/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="16fc3f9a5463dfbc7b942fd1ea1275eaa834e914"
 network: Use self-contained recursive mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"36304f3d7a32fc4e7573fa6f3db2efb437416639/rtems"
 36304f3/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="36304f3d7a32fc4e7573fa6f3db2efb437416639"
 spi: Use self-contained mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"dc158ad4ec9546a826d2a4ea3ec09dcbdaa594f2/rtems"
 dc158ad/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="dc158ad4ec9546a826d2a4ea3ec09dcbdaa594f2"
 i2c: Use self-contained mutex

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"8d7f36807c14ec1d4612d2433eb808ea4e726b47/rtems"
 8d7f3680/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="8d7f36807c14ec1d4612d2433eb808ea4e726b47"
 libblock: Use self-contained mutex and cond var

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"1b2da177ef052c631ab6707a40682ce61537ea49/rtems"
 1b2da177/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="1b2da177ef052c631ab6707a40682ce61537ea49"
 libblock: Use self-contained mutex for disk lock

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-02-02 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"f14a04c6ef5cde3f812aefd9827eddcf4cf2f13e/rtems"
 f14a04c6/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="f14a04c6ef5cde3f812aefd9827eddcf4cf2f13e"
 Add RTEMS thread API

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2018-01-22 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  6.1
Component:  bsps | Version:  5
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by Sebastian Huber ):

 In [changeset:"6bc5e47c84141d1523d637084364c9371b87d943/rtems"
 6bc5e47/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="6bc5e47c84141d1523d637084364c9371b87d943"
 smptests: Fix configuration

 Update #2843.
 }}}

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2017-10-11 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  Sebastian Huber  |   Owner:  Sebastian Huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  4.13.0
Component:  bsps | Version:  4.12
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--
Changes (by Joel Sherrill):

 * component:  score => bsps
 * milestone:  4.12.0 => 4.13.0


--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs

Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2016-12-20 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  sebastian.huber  |   Owner:  sebastian.huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  4.12
Component:  cpukit   | Version:  4.12
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by sebastian.huber):

 Self-contained means the user must provide the storage for the object.

 https://sourceware.org/git/gitweb.cgi?p=newlib-
 
cygwin.git;a=blob;f=newlib/libc/sys/rtems/include/sys/lock.h;h=c0549db67cbb559edacbef49584156fb8ac346fd;hb=HEAD

 What you cannot do with self-contained objects is using them in a
 distributed system with distinct address spaces, e.g. a usage case RTEMS
 was initially designed for. Here you need one level of indirection to
 identify objects globally.

 With object identifiers you can detect a use of deleted objects under
 certain conditions. You cannot detect use of a deleted and re-used object.
 To detect/prevent the use of deleted objects in SMP configurations is
 quite difficult (e.g. hazard pointers) and not implemented in RTEMS.

 From my point of view the advantages of self-contained objects are
 apparent.

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs


Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2016-12-20 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  sebastian.huber  |   Owner:  sebastian.huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  4.12
Component:  cpukit   | Version:  4.12
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by gedare):

 What are the downsides for self-contained objects? (Is there a clear
 definition of what self-contained objects are?)

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs


Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2016-12-20 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  sebastian.huber  |   Owner:  sebastian.huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  4.12
Component:  cpukit   | Version:  4.12
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by sebastian.huber):

 Replying to [comment:2 chrisj]:
 > Can Option 4 be NP extensions to POSIX after Option 2 is done?

 Binary semaphores are not available out of the box with POSIX. You need a
 mutex and a condition variable for this, e.g.
 http://stackoverflow.com/questions/7478684/how-to-initialise-a-binary-
 semaphore-in-c.

 Option 4. should be implementable via POSIX to allow to run the software
 without RTEMS, however, it should use a specialized implementation on
 RTEMS to minimize run-time and space overheads.

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs


Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries

2016-12-20 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  sebastian.huber  |   Owner:  sebastian.huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  4.12
Component:  cpukit   | Version:  4.12
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--

Comment (by chrisj):

 Can Option 4 be NP extensions to POSIX after Option 2 is done?

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs


Re: [RTEMS Project] #2843: Use self-contained objects instead of Classic API for drivers and support libraries (was: Use C11 mutexes instead of Classic API priority inheritance semaphores)

2016-12-20 Thread RTEMS trac
#2843: Use self-contained objects instead of Classic API for drivers and support
libraries
-+--
 Reporter:  sebastian.huber  |   Owner:  sebastian.huber
 Type:  enhancement  |  Status:  new
 Priority:  normal   |   Milestone:  4.12
Component:  cpukit   | Version:  4.12
 Severity:  normal   |  Resolution:
 Keywords:   |
-+--
Description changed by sebastian.huber:

Old description:

> Use C11 mutexes instead of Classic API priority inheritance semaphores
> throughout the RTEMS code base as a performance optimization and to
> simplify the application configuration.
>
> See discussion:
>
> https://lists.rtems.org/pipermail/devel/2016-December/016543.html

New description:

 The Classic API has some weaknesses:

 * Dynamic memory (the workspace) is used to allocate object pools.  This
 requires a complex configuration with heavy use of the C pre-processor.
 * Objects are created via function calls which return an object
 identifier. The object operations use this identifier and map it
 internally to an object representation.
 * The objects reside in a table, e.g. they are suspect to false sharing of
 cache lines.
 * The object operations use a rich set of options and attributes.  For
 each object operation these parameters must be evaluated and validated at
 run-time to figure out what to do exactly for this operation.

 The overhead for Classic API mutexes used for example in Termios and the
 SPI framework is significant, see discussion:

 https://lists.rtems.org/pipermail/devel/2016-December/016543.html

 There are some API options available:

 1. Use C11 mutexes and condition variables.
 2. Turn the POSIX synchronization objects into self-contained objects and
 use them.
 3. Use FreeBSD synchronization objects like
 [https://www.freebsd.org/cgi/man.cgi?query=mutex&sektion=9 MUTEX(9)] or
 
[https://www.freebsd.org/cgi/man.cgi?query=condvar&apropos=0&sektion=9&manpath=FreeBSD+10.3-RELEASE+and+Ports&arch=default&format=html
 CONDVAR(9)].
 4. Add RTEMS-specific self-contained synchronization objects and use them.

 Option 1. and 2. lack support for binary semaphores which are used for
 task/interrupt synchronization, e.g. Termios.

 Option 2. needs run-time evaluation to figure out the actual object
 variant, e.g. non-recursive, recursive, ceiling, error-checking, robust
 POSIX mutex.

 Option 3. uses hash tables, thus it is not suitable for real-time systems.

 Option 1. and 2. lack support for user-defined object names that may help
 for system diagnostic, tracing and debugging.

 Option 4. could be used to avoid all shortcomings of options 1-3. It would
 be trivial to implement, test and document.

 In order to enable user-defined object names one option is to add a const
 char *name member to Thread_queue_Queue.

--

--
Ticket URL: 
RTEMS Project 
RTEMS Project
___
bugs mailing list
bugs@rtems.org
http://lists.rtems.org/mailman/listinfo/bugs