diff mbox

[v1,1/1] syscall: #ifdef newer RLIMIT_* codes

Message ID 1329762416-6012-1-git-send-email-meadori@codesourcery.com
State New
Headers show

Commit Message

Meador Inge Feb. 20, 2012, 6:26 p.m. UTC
Commit e22b7015353be824620b1f0f5e32a8575b898a8c added the translation
from target to host RLIMIT_* codes, but some of the added codes are
only available on newer version of Linux (as documented in 'getrlimit(2)').

Signed-off-by: Meador Inge <meadori@codesourcery.com>
---
 linux-user/syscall.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

Comments

Andreas Färber Feb. 20, 2012, 7:38 p.m. UTC | #1
Am 20.02.2012 19:26, schrieb Meador Inge:
> Commit e22b7015353be824620b1f0f5e32a8575b898a8c added the translation
> from target to host RLIMIT_* codes, but some of the added codes are
> only available on newer version of Linux (as documented in 'getrlimit(2)').
> 
> Signed-off-by: Meador Inge <meadori@codesourcery.com>

Reviewed-by: Andreas Färber <afaerber@suse.de>

CC'ing the linux-user maintainer.

Andreas

> ---
>  linux-user/syscall.c |   12 ++++++++++++
>  1 files changed, 12 insertions(+), 0 deletions(-)
> 
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 8a11213..1986238 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -996,20 +996,32 @@ static inline int target_to_host_resource(int code)
>          return RLIMIT_LOCKS;
>      case TARGET_RLIMIT_MEMLOCK:
>          return RLIMIT_MEMLOCK;
> +/* >= Linux 2.6.8 */
> +#ifdef RLIMIT_MSGQUEUE
>      case TARGET_RLIMIT_MSGQUEUE:
>          return RLIMIT_MSGQUEUE;
> +#endif
> +/* >= Linux 2.6.12 */
> +#ifdef RLIMIT_NICE
>      case TARGET_RLIMIT_NICE:
>          return RLIMIT_NICE;
> +#endif
>      case TARGET_RLIMIT_NOFILE:
>          return RLIMIT_NOFILE;
>      case TARGET_RLIMIT_NPROC:
>          return RLIMIT_NPROC;
>      case TARGET_RLIMIT_RSS:
>          return RLIMIT_RSS;
> +/* >= Linux 2.6.12 */
> +#ifdef RLIMIT_RTPRIO
>      case TARGET_RLIMIT_RTPRIO:
>          return RLIMIT_RTPRIO;
> +#endif
> +/* >= Linux 2.6.8 */
> +#ifdef RLIMIT_SIGPENDING
>      case TARGET_RLIMIT_SIGPENDING:
>          return RLIMIT_SIGPENDING;
> +#endif
>      case TARGET_RLIMIT_STACK:
>          return RLIMIT_STACK;
>      default:
Meador Inge March 27, 2012, 3:08 p.m. UTC | #2
Ping.

On 02/20/2012 01:38 PM, Andreas Färber wrote:
> Am 20.02.2012 19:26, schrieb Meador Inge:
>> Commit e22b7015353be824620b1f0f5e32a8575b898a8c added the translation
>> from target to host RLIMIT_* codes, but some of the added codes are
>> only available on newer version of Linux (as documented in 'getrlimit(2)').
>>
>> Signed-off-by: Meador Inge <meadori@codesourcery.com>
> 
> Reviewed-by: Andreas Färber <afaerber@suse.de>
> 
> CC'ing the linux-user maintainer.
> 
> Andreas
> 
>> ---
>>  linux-user/syscall.c |   12 ++++++++++++
>>  1 files changed, 12 insertions(+), 0 deletions(-)
>>
>> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
>> index 8a11213..1986238 100644
>> --- a/linux-user/syscall.c
>> +++ b/linux-user/syscall.c
>> @@ -996,20 +996,32 @@ static inline int target_to_host_resource(int code)
>>          return RLIMIT_LOCKS;
>>      case TARGET_RLIMIT_MEMLOCK:
>>          return RLIMIT_MEMLOCK;
>> +/* >= Linux 2.6.8 */
>> +#ifdef RLIMIT_MSGQUEUE
>>      case TARGET_RLIMIT_MSGQUEUE:
>>          return RLIMIT_MSGQUEUE;
>> +#endif
>> +/* >= Linux 2.6.12 */
>> +#ifdef RLIMIT_NICE
>>      case TARGET_RLIMIT_NICE:
>>          return RLIMIT_NICE;
>> +#endif
>>      case TARGET_RLIMIT_NOFILE:
>>          return RLIMIT_NOFILE;
>>      case TARGET_RLIMIT_NPROC:
>>          return RLIMIT_NPROC;
>>      case TARGET_RLIMIT_RSS:
>>          return RLIMIT_RSS;
>> +/* >= Linux 2.6.12 */
>> +#ifdef RLIMIT_RTPRIO
>>      case TARGET_RLIMIT_RTPRIO:
>>          return RLIMIT_RTPRIO;
>> +#endif
>> +/* >= Linux 2.6.8 */
>> +#ifdef RLIMIT_SIGPENDING
>>      case TARGET_RLIMIT_SIGPENDING:
>>          return RLIMIT_SIGPENDING;
>> +#endif
>>      case TARGET_RLIMIT_STACK:
>>          return RLIMIT_STACK;
>>      default:
>
Riku Voipio March 27, 2012, 5:15 p.m. UTC | #3
Hi,

Do we really need this? 2.6.12 came out in 2005, even oldest supported
RHEL (5) is minimum 2.6.18 these days.

Riku

On Tue, Mar 27, 2012 at 10:08:03AM -0500, Meador Inge wrote:
> Ping.
> 
> On 02/20/2012 01:38 PM, Andreas Färber wrote:
> > Am 20.02.2012 19:26, schrieb Meador Inge:
> >> Commit e22b7015353be824620b1f0f5e32a8575b898a8c added the translation
> >> from target to host RLIMIT_* codes, but some of the added codes are
> >> only available on newer version of Linux (as documented in 'getrlimit(2)').
> >>
> >> Signed-off-by: Meador Inge <meadori@codesourcery.com>
> > 
> > Reviewed-by: Andreas Färber <afaerber@suse.de>
> > 
> > CC'ing the linux-user maintainer.
> > 
> > Andreas
> > 
> >> ---
> >>  linux-user/syscall.c |   12 ++++++++++++
> >>  1 files changed, 12 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> >> index 8a11213..1986238 100644
> >> --- a/linux-user/syscall.c
> >> +++ b/linux-user/syscall.c
> >> @@ -996,20 +996,32 @@ static inline int target_to_host_resource(int code)
> >>          return RLIMIT_LOCKS;
> >>      case TARGET_RLIMIT_MEMLOCK:
> >>          return RLIMIT_MEMLOCK;
> >> +/* >= Linux 2.6.8 */
> >> +#ifdef RLIMIT_MSGQUEUE
> >>      case TARGET_RLIMIT_MSGQUEUE:
> >>          return RLIMIT_MSGQUEUE;
> >> +#endif
> >> +/* >= Linux 2.6.12 */
> >> +#ifdef RLIMIT_NICE
> >>      case TARGET_RLIMIT_NICE:
> >>          return RLIMIT_NICE;
> >> +#endif
> >>      case TARGET_RLIMIT_NOFILE:
> >>          return RLIMIT_NOFILE;
> >>      case TARGET_RLIMIT_NPROC:
> >>          return RLIMIT_NPROC;
> >>      case TARGET_RLIMIT_RSS:
> >>          return RLIMIT_RSS;
> >> +/* >= Linux 2.6.12 */
> >> +#ifdef RLIMIT_RTPRIO
> >>      case TARGET_RLIMIT_RTPRIO:
> >>          return RLIMIT_RTPRIO;
> >> +#endif
> >> +/* >= Linux 2.6.8 */
> >> +#ifdef RLIMIT_SIGPENDING
> >>      case TARGET_RLIMIT_SIGPENDING:
> >>          return RLIMIT_SIGPENDING;
> >> +#endif
> >>      case TARGET_RLIMIT_STACK:
> >>          return RLIMIT_STACK;
> >>      default:
> > 
> 
> 
> -- 
> Meador Inge
> CodeSourcery / Mentor Embedded
> http://www.mentor.com/embedded-software
Meador Inge March 27, 2012, 8:20 p.m. UTC | #4
On 03/27/2012 12:15 PM, Riku Voipio wrote:

> Hi,
> 
> Do we really need this? 2.6.12 came out in 2005, even oldest supported
> RHEL (5) is minimum 2.6.18 these days.

The development environment I am working with uses a RHEL 3 compatible sysroot
(RHEL 3 is currently marked with "extended life cycle support").  So, I
definitely need it :-) (and yes I know that this sysroot is ancient).  I don't
know if others are using such old development sysroots.  The changes are
minimal and while it would be great to have this applied upstream I do
understand if you want to NACK.
diff mbox

Patch

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 8a11213..1986238 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -996,20 +996,32 @@  static inline int target_to_host_resource(int code)
         return RLIMIT_LOCKS;
     case TARGET_RLIMIT_MEMLOCK:
         return RLIMIT_MEMLOCK;
+/* >= Linux 2.6.8 */
+#ifdef RLIMIT_MSGQUEUE
     case TARGET_RLIMIT_MSGQUEUE:
         return RLIMIT_MSGQUEUE;
+#endif
+/* >= Linux 2.6.12 */
+#ifdef RLIMIT_NICE
     case TARGET_RLIMIT_NICE:
         return RLIMIT_NICE;
+#endif
     case TARGET_RLIMIT_NOFILE:
         return RLIMIT_NOFILE;
     case TARGET_RLIMIT_NPROC:
         return RLIMIT_NPROC;
     case TARGET_RLIMIT_RSS:
         return RLIMIT_RSS;
+/* >= Linux 2.6.12 */
+#ifdef RLIMIT_RTPRIO
     case TARGET_RLIMIT_RTPRIO:
         return RLIMIT_RTPRIO;
+#endif
+/* >= Linux 2.6.8 */
+#ifdef RLIMIT_SIGPENDING
     case TARGET_RLIMIT_SIGPENDING:
         return RLIMIT_SIGPENDING;
+#endif
     case TARGET_RLIMIT_STACK:
         return RLIMIT_STACK;
     default: