[2/4] hurd: Don't attempt to deallocate MACH_PORT_DEAD
Checks
Context |
Check |
Description |
dj/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
Commit Message
...in some more places.
Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
---
sysdeps/mach/hurd/dl-sysdep.c | 2 +-
sysdeps/mach/hurd/mmap.c | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
Comments
Applied, thanks!
Sergey Bugaev, le lun. 24 avril 2023 00:55:24 +0300, a ecrit:
> ...in some more places.
>
> Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
> ---
> sysdeps/mach/hurd/dl-sysdep.c | 2 +-
> sysdeps/mach/hurd/mmap.c | 6 +++---
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/sysdeps/mach/hurd/dl-sysdep.c b/sysdeps/mach/hurd/dl-sysdep.c
> index d7b309e0..25a12774 100644
> --- a/sysdeps/mach/hurd/dl-sysdep.c
> +++ b/sysdeps/mach/hurd/dl-sysdep.c
> @@ -472,7 +472,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
> err = __io_map ((mach_port_t) fd, &memobj_rd, &memobj_wr);
> if (err)
> return __hurd_fail (err), MAP_FAILED;
> - if (memobj_wr != MACH_PORT_NULL)
> + if (MACH_PORT_VALID (memobj_wr))
> __mach_port_deallocate (__mach_task_self (), memobj_wr);
> }
>
> diff --git a/sysdeps/mach/hurd/mmap.c b/sysdeps/mach/hurd/mmap.c
> index c3cc1856..790eb238 100644
> --- a/sysdeps/mach/hurd/mmap.c
> +++ b/sysdeps/mach/hurd/mmap.c
> @@ -91,7 +91,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
> if (wobj == robj)
> max_vmprot |= VM_PROT_WRITE;
> memobj = robj;
> - if (wobj != MACH_PORT_NULL)
> + if (MACH_PORT_VALID (wobj))
> __mach_port_deallocate (__mach_task_self (), wobj);
> break;
> case PROT_WRITE:
> @@ -99,7 +99,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
> if (robj == wobj)
> max_vmprot |= VM_PROT_READ|VM_PROT_EXECUTE;
> memobj = wobj;
> - if (robj != MACH_PORT_NULL)
> + if (MACH_PORT_VALID (robj))
> __mach_port_deallocate (__mach_task_self (), robj);
> break;
> case PROT_READ|PROT_WRITE:
> @@ -167,7 +167,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
> copy ? VM_INHERIT_COPY : VM_INHERIT_SHARE);
> }
>
> - if (memobj != MACH_PORT_NULL)
> + if (MACH_PORT_VALID (memobj))
> __mach_port_deallocate (__mach_task_self (), memobj);
>
> if (err == KERN_PROTECTION_FAILURE)
> --
> 2.40.0
>
@@ -472,7 +472,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
err = __io_map ((mach_port_t) fd, &memobj_rd, &memobj_wr);
if (err)
return __hurd_fail (err), MAP_FAILED;
- if (memobj_wr != MACH_PORT_NULL)
+ if (MACH_PORT_VALID (memobj_wr))
__mach_port_deallocate (__mach_task_self (), memobj_wr);
}
@@ -91,7 +91,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
if (wobj == robj)
max_vmprot |= VM_PROT_WRITE;
memobj = robj;
- if (wobj != MACH_PORT_NULL)
+ if (MACH_PORT_VALID (wobj))
__mach_port_deallocate (__mach_task_self (), wobj);
break;
case PROT_WRITE:
@@ -99,7 +99,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
if (robj == wobj)
max_vmprot |= VM_PROT_READ|VM_PROT_EXECUTE;
memobj = wobj;
- if (robj != MACH_PORT_NULL)
+ if (MACH_PORT_VALID (robj))
__mach_port_deallocate (__mach_task_self (), robj);
break;
case PROT_READ|PROT_WRITE:
@@ -167,7 +167,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
copy ? VM_INHERIT_COPY : VM_INHERIT_SHARE);
}
- if (memobj != MACH_PORT_NULL)
+ if (MACH_PORT_VALID (memobj))
__mach_port_deallocate (__mach_task_self (), memobj);
if (err == KERN_PROTECTION_FAILURE)